Backups are broken after out of memory error

Output of restic version
restic 0.12.0 compiled with go1.15.8 on linux/amd64

How did you run restic exactly?
# restic --password-command='<><><><>' -r rclone:ftp_backup:wwwdata rebuild-index
repository da0fbe31 opened successfully, password is correct
loading indexes...

FTP
Expected behavior
I would like backups to be functional
Actual behavior
nothing works
Steps to reproduce the behavior
I'm not sure about anything, I think that daily cron job with restic failed with OOM
Did restic help you today? Did it make you happy in any way?
It's awesome, it's helping me for years, but the current situation is a deal-breaker for me.

Additional info
➜  ~ restic --password-command='<><><><>' -r rclone:ftp_backup:wwwdata cat index e9e10b81730e22e61b526692e9c21d7465f32a58cb9a4940a4b2b0a8315cad6c
repository da0fbe31 opened successfully, password is correct
load <index/e9e10b8173>: invalid data returned
github.com/restic/restic/internal/repository.(*Repository).LoadAndDecrypt
        /restic/internal/repository/repository.go:112
main.runCat
        /restic/cmd/restic/cmd_cat.go:83
main.glob..func4
        /restic/cmd/restic/cmd_cat.go:27
github.com/spf13/cobra.(*Command).execute
        /home/build/go/pkg/mod/github.com/spf13/cobra@v0.0.5/command.go:826
github.com/spf13/cobra.(*Command).ExecuteC
        /home/build/go/pkg/mod/github.com/spf13/cobra@v0.0.5/command.go:914
github.com/spf13/cobra.(*Command).Execute
        /home/build/go/pkg/mod/github.com/spf13/cobra@v0.0.5/command.go:864
main.main
        /restic/cmd/restic/main.go:98
runtime.main
        /usr/local/go/src/runtime/proc.go:204
runtime.goexit
        /usr/local/go/src/runtime/asm_amd64.s:1374

OK, it looks like that rebuild-index from the machine with enough memory works, so not a critical bug anymore (if it won't oom on restore of course)

The underlying problem here (besides the OOM) is that the repository ended up with an incomplete index file. We basically have two options here: either ensure that uploads are always atomic, which would have to be handled by rclone in this case, or to allow restic to ignore broken index files. I'm not really sure whether the latter option is a good idea as that could mask problems with the repository storage...

@MichaelEischer today I've started to get OOMs on backup itself which is quite shocking.
For me the top priority is to not lose under any condition information from backup, which may require ensuring that backup is atomic. Because of user thinks that backup is complete but in reality is unable to recover data from it - I consider it broken.

@asm0dey How much data and how many files do you back up? How large is the repository? You could set GOGC=10 to (hopefully) reduce the memory usage a bit. But it sounds like the repository size is too large in relation to the available memory of the machine.

For me the top priority is to not lose under any condition information from backup, which may require ensuring that backup is atomic. Because of user thinks that backup is complete but in reality is unable to recover data from it - I consider it broken.

I'm not sure I understand what you wanted to say. You can just delete the incomplete index from the crashed restic run and afterwards the repository will be accessible again. The failed backup run obviously hasn't created a snapshot but besides that the repository is fine.

@MichaelEischer total size of data is ≈20 GB, repo size ≈ 50 GB, but the increment is not too big. The machine from which I'm making backup has 1GB memory, but part of it is busy of course. I'm surprised the size of the archive is related to the required data.

You can just delete the incomplete index from the crashed restic run and afterwards the repository will be accessible again

Doesn't it mean that I'll lose access to some data?

total size of data is ≈20 GB, repo size ≈ 50 GB, but the increment is not too big. The machine from which I'm making backup has 1GB memory, but part of it is busy of course. I'm surprised the size of the archive is related to the required data.

How many files does the backup include? And how many snapshots does the repository contain? For 50GB I would guess that restic require 200-300 MB RAM (that guess could also be way off). In order to deduplicate files, restic has to load the information about file chunks which already exist in the repository into memory.

Doesn't it mean that I'll lose access to some data?

The index consists of several files. As the incomplete index would only be required for the snapshot that would have been created by the crashed backup run, it's possible to just delete that index. All snapshots created earlier on will remain accessible. And the snapshot from the crashed backup run was never saved in the first place. restic is designed to not break the repository content no matter at which point in time it crashes or loses the network connection to the storage repository.

How many files does the backup include

I would say ≈200k, and there were ≈60 snapshots I think

All snapshots created earlier on will remain accessible

Oh, OK, that was not clear to me. Thnk you for clarification.


Notification.permission not accessible

It looks like there is a regression since: https://github.com/dart-lang/sdk/issues/20585#issuecomment-629234693
as Notification.permission cannot be accessed statically.

Looks like @srujzs committed this change here: https://github.com/dart-lang/sdk/commit/80f84e19421ed813e1d2961466d45c11c2229f4e#diff-2326766614acd647cd69f60e35033cc2
Possibly inadvertent to drop the static?

Yeah, this is an issue. This was missed during the transformation of fields to natives. I'll take this on to handle this and similar transformations of static fields.


about the per-fedavg

Why the batch_size need to * 2?

Thank you!

besides, after I run the Per-fedavg algorithm, I find the average test accuracy is only about 0.1(cnn, mnist)........

I would appreciate it if you can help me, thanks!

Hi @Bhongcheng, could you provide your hyperparameter setting?

Hi @Bhongcheng, could you provide your hyperparameter setting?

Thanks for your reply!

Hello, have you found out the reason? I'm working with a similar algorithm, and I've encountered a low accuracy problem like this.

besides, after I run the Per-fedavg algorithm, I find the average test accuracy is only about 0.1(cnn, mnist)........

Hello, have you found out the reason? I'm working with a similar algorithm, and I've encountered a low accuracy problem like this.

besides, after I run the Per-fedavg algorithm, I find the average test accuracy is only about 0.1(cnn, mnist)........

No.... I am very poor in federated learning and programming

Hi @Bhongcheng, could you provide your hyperparameter setting?

besides, this is the dataset setting
"num_clients":20,"num_classes":10,"non_iid":true,"balance":false,"partition":"dir" *** "alpha":0.1,"batch_size":10
Thanks for your reply!

请问你现在了解了怎么运行per-fedavg算法吗？相比于fedavg算法，我只需要多加一个 -bt 0.001 就可以吗？我看原论文还要一个τ=10的参数？


JolynnDuckHackPad

Ready to submit your project? Nice job! Hopefully you've read the submission guidelines. If not, make sure to read them first.
If you're unsure about the format, make sure to check out the Orpheuspad example and follow the format there.
If this PR isn't a submission, that's okay too! If there's anything about this PR template that seems confusing, let me know in #hackpad on the slack!

Update - looks like an error on our end, you're fine

Regardless, I need the source kicad files for this! Let me know when you've added them

Hi ive added the source kicad files

Hey - I'm a little confused as to how this would print, it looks like it has a floating edge, and it sticks out at the bottom. Is this intentional? If not could you fix please

helloo, sorry about that, i have no idea how to remove that floating edge so i just redid it, just reuploaded the file, thank you!


remove deprecated ssl and duplicate proxy host header

This PR removes:

the duplicate host header in the Load balancer configs for each API endpoint
the ssl on directive with is deprecated and redundant with  listen       *:443 ssl; directive

Tested

@armab I added this to changelog


feat: support one time passwords

npm supports one time passwords (OTP) for releases and I think maybe one day might start showing which modules were published with an OTP on their website (read it somewhere though I can't find a link right now, I think maybe npm devs on Twitter).  This PR adds support to Aegir for prompting for an OTP if attempting to publish fails and a message asking for an OTP is detected in the failure message.
It uses only the verbose listr renderer and not the update renderer as the update renderer causes the OTP prompt to disappear.  The update renderer seems to get really confused during our pre-release test runs anyway and it's more useful to know what's going on during a release.
N.b. we can't prompt for an OTP at the start of the process because they expire and some of out test suites take ages to run.

Bump! I needs this.

I did npm link on this branch and did two releases with it today.  The output of the release is also cleaner, albeit less "fancy".  👍 for merging and releasing this.
[14:05:17] Lint [started]
[14:05:18] Lint [completed]
[14:05:18] Test [started]
###
# Full test output here
###
[14:05:45] Test [completed]
[14:05:45] Build [started]
[14:05:45] Build [completed]
[14:05:45] Update Contributors [started]
[14:05:45] Update Contributors [completed]
[14:05:45] Bump Version [started]
[14:05:45] Bump Version: v0.2.0 -> v0.2.1 [title changed]
[14:05:45] Bump Version: v0.2.0 -> v0.2.1 [completed]
[14:05:45] Generate Changelog [started]
[14:05:45] Generate Changelog [completed]
[14:05:45] Commit to Git [started]
[14:05:46] Commit to Git [completed]
[14:05:46] Push to GitHub [started]
[14:05:50] Push to GitHub [completed]
[14:05:50] Generate GitHub Release [started]
[14:05:51] Generate GitHub Release [completed]
[14:05:51] Publish documentation [started]
[14:05:51] Clean ./docs [started]
[14:05:51] Clean ./docs [completed]
[14:05:51] Generating documentation [started]
[14:05:52] Generating documentation [completed]
[14:05:52] Publish to GitHub Pages [started]
[14:05:58] Publish to GitHub Pages [completed]
[14:05:58] Publish documentation [completed]
[14:05:58] Publish to npm [started]
Enter an npm OTP: ******
[14:06:15] Publish to npm [completed]

@VictorBjelkholm anything you want done to this PR before merging & releasing it?


[Request] Add option to set buffer

Add option to set buffer MB. Example: 50, 80, 100, 200 mb.

@moneytoo ?

I think he means video cache for online streaming.

Yes

+1


Slicer3DPlotter in PyQt6 application

I would like to add Slicer3DPlotter to a PyQt6 application.  See the attached basic code which partially works, however, showing the icon and changing the color map do not work. Further, I would like define and/or return the slice locations to my  PyQt6 application. Any support would be appreciated.
import sys
from PyQt6.QtWidgets import QMainWindow, QApplication, QFrame, QVBoxLayout
from vtkmodules.qt.QVTKRenderWindowInteractor import QVTKRenderWindowInteractor
from vedo import dataurl, Volume
from vedo.applications import Slicer3DPlotter

class MainWindow(QMainWindow):

    def __init__(self, parent=None):

        QMainWindow.__init__(self, parent)
        self.frame = QFrame()
        self.layout = QVBoxLayout()
        self.vtkWidget = QVTKRenderWindowInteractor(self.frame)

        # Create renderer and add the vedo objects and callbacks
        vol = Volume(dataurl + "embryo.slc")
        self.plt = Slicer3DPlotter(qt_widget=self.vtkWidget,volume=vol,
                    cmaps=("gist_ncar_r", "jet", "Spectral_r", "hot_r", "bone_r"),
                    use_slider3d=True,
                    bg="blue1",
                    bg2="blue9",
                )

        self.plt.show()

        # Set-up the rest of the Qt window
        self.layout.addWidget(self.vtkWidget)

        self.frame.setLayout(self.layout)
        self.setCentralWidget(self.frame)
        self.show()

    def onClose(self):
        #Disable the interactor before closing to prevent it
        #from trying to act on already deleted items
        self.vtkWidget.close()

if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = MainWindow()
    window.show()
    sys.exit(app.exec())

Hi @JeffPS13
Sorry for the very late reply! That's indeed a bit strange behavior - i think it's in the upstream VTK event management.. you can try if this trick fixes it (tested it on qt5):
import sys
from PyQt5.QtWidgets import QMainWindow, QApplication, QFrame, QVBoxLayout
from vtkmodules.qt.QVTKRenderWindowInteractor import QVTKRenderWindowInteractor
from vedo import dataurl, Volume
from vedo.applications import Slicer3DPlotter

class MainWindow(QMainWindow):
    def __init__(self, parent=None):

        QMainWindow.__init__(self, parent)
        self.frame = QFrame()
        self.layout = QVBoxLayout()
        self.vtkWidget = QVTKRenderWindowInteractor(self.frame)

        # Create renderer and add the vedo objects and callbacks
        self.vol = Volume(dataurl + "embryo.slc")

        self.plt = Slicer3DPlotter(
            volume=self.vol,
            cmaps=("gist_ncar_r", "jet", "Spectral_r", "hot_r", "bone_r"),
            use_slider3d=True,
            bg="blue1",
            bg2="blue9",
            qt_widget=self.vtkWidget,
        )
        self.cid1 = self.plt.add_callback("mouse click", self._trigger)

        self.plt.show()

        # Set-up the rest of the Qt window
        self.layout.addWidget(self.vtkWidget)
        self.frame.setLayout(self.layout)
        self.setCentralWidget(self.frame)
        self.show()

    def _trigger(self, evt):
        # print("You have clicked your mouse button. Event info:\n", evt)
        i = int(self.plt.xslider.value)
        j = int(self.plt.yslider.value)
        k = int(self.plt.zslider.value)
        print(i,j,k, type(self.vol.xslice(i)))

    def onClose(self):
        # Disable the interactor before closing to prevent it
        # from trying to act on already deleted items
        print("CLOSING")
        self.vtkWidget.close()

if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = MainWindow()
    app.aboutToQuit.connect(window.onClose)
    window.show()
    sys.exit(app.exec())

Thanks, Marco. This works much better. I've been working slider3D in my own plots using self.zslider=self.plt.add_slider3d(...). Is there a way to remove the slider once it's added?
Also, much thanks for making such an accessible and well documented tool!

Thanks!
You should be able to switch it off with self.zslider.off().

Thanks, again. That worked perfectly!


Show >=2 flight tracks at the same time

Is it possible to show 2 flight tracks at once on the Horizontal View? Of course, it's possible to activate them one after another in quick succession. But an important aim of our upcoming campaign HALO-(AC)3 is coordinating 2 airplanes at once. So it would be cool to

show 2 flight tracks at the same time (e.g. with different colors) on Horizontal View.

This can be at current state reached by using the KML overlay and displaying a different flightpath there.
Therefore a parser flight track to kml is needed.

Option A) Improving workaround with existing tools
One could rather simply add a new dockwidget/feature to the KML thingie that could check a target file for changes and update accordingly. I.e. it would

make sense to support FTML files in the KML feature dialogue (such that the export-to-KML-feature need not be used. That is straightforward
Check for changes to the underlying file and update the visualisation upon such a change. No idea if that is easy or hard.

Option B)
We are working on a collaboration feature, where one could also do this without a file, but this feature needs to be completed first (there are a couple of big construction sites ongoing).
That would allow to open to MSS instances and edit both tracks at the same time, one in each MSS instance. That would be very, very close to what you desire. Might be achievable within this year.
Editing two flight tracks, at the same time, within one instance, with two TableViews etc, will never work, I guess.


Improved tsconfig.json files in examples directory

What this PR solves / how to test:
Updates out-of-date configuration settings in some of the tsconfig.json in the examples. Also updates the initial tsconfig.init.json.
Based on information here:
https://www.totaltypescript.com/tsconfig-cheat-sheet
This is not complete - but a lot of what I've added can be added into other tsconfig.json files throughout the repo.
Author has addressed the following:

Tests

[ ] Included
[x] Not necessary because: just a change to the examples directory

Changeset (Changeset guidelines)

[ ] Included
[x] Not necessary because: Unsure if this is a user-facing change

Thanks for the PR! Unfortunately I don't think we can merge this yet, since the version of esbuild we use doesn't support TypeScript 5. We can definitely get it in after #3962 though!

The current template (uses 5.0.4) and my workers already run using TypeScript 5. What's the issue with TS 5?

I added a changeset and ran the e2e tests locally. LGTM


fatal error on SMS games on staging

tested on http://staging.beta.dosomething.org/campaigns/sms-campaign?source=node/1165

dosomething_signup_get_mobilecommons_vars no longer exists... https://github.com/DoSomething/dosomething/commit/8d776c32bd11f490f8bf00955bfdc449f12b8afa#diff-e0f8778f3c265a20340a22593a3776ffL56

This error should occur when a user is logged in: https://github.com/DoSomething/dosomething/blob/v0.4.28/lib/modules/dosomething/dosomething_signup/includes/dosomething_signup.mobilecommons.inc#L24

On it.


METRON-1911 Docker setup for testing bro plugin

Status>
run_end_to_end.sh is provided as an example of a testing script.  Specific or extended scripts can be created similar to this script to use the containers.
This script does the following:

Creates the Docker network
Runs the zookeeper container
Waits for zookeeper to be available
Runs the kafka container
Waits for kafka to be available
Creates the bro topic
Downloads sample PCAP data
Runs the bro container in the background

Note that all parameters passed to this script are passed to the docker_run_bro_container.sh script

Builds the bro plugin
Configures the bro plugin
Runs bro against all the pcap data, one at a time
Executes a kafka client to read the data from bro for each pcap file
Stores the output kafka messages and the bro logs into the test_output directory

>tree Tue_Jan__8_21_54_10_EST_2019
Tue_Jan__8_21_54_10_EST_2019
├── exercise-traffic_pcap
│   ├── capture_loss.log
│   ├── conn.log
│   ├── dhcp.log
│   ├── dns.log
│   ├── files.log
│   ├── http.log
│   ├── kafka-output.log
│   ├── known_certs.log
│   ├── known_devices.log
│   ├── loaded_scripts.log
│   ├── notice.log
│   ├── packet_filter.log
│   ├── reporter.log
│   ├── smtp.log
│   ├── software.log
│   ├── ssl.log
│   ├── stats.log
│   ├── weird.log
│   └── x509.log
├── ftp_pcap
│   ├── capture_loss.log
│   ├── conn.log
│   ├── files.log
│   ├── ftp.log
│   ├── kafka-output.log
│   ├── loaded_scripts.log
│   ├── packet_filter.log
│   ├── reporter.log
│   ├── software.log
│   └── stats.log

Creates a results.csv for each pcap that has the line counts of the kafka and the bro output for each log
Prints all the results.csv to the screen

As we can see, the output is a folder named for the test run time, with a sub folder per pcap, containing all the bro logs and the kafka_output.log.
At this point the containers are up and running in the background.
Other scripts may then be used to do your testing, for example running:
./scripts/docker_execute_shell.sh

NOTE: If the scripts are run repeatedly, and there is no change in bro or the librdkafka, the line ./run_end_to_end.sh can be replaced by ./run_end_to_end.sh --skip-docker-build, which uses the --skip-docker-build flag to not rebuild the bro container, saving the time of rebuilding bro and librdkafka.

NOTE: After you are done, you must call the finish_end_to_end.sh script to cleanup.

run_end_to_end.sh
Parameters
--skip-docker-build            [OPTIONAL] Skip build of bro docker machine.
--data-path                    [OPTIONAL] The pcap data path. Default: ./data

todo
[x] start the bro container in the background
[x] add host side scripts to docker exec 'foo'  where foo is a script in the bro container
[x] execute the plugin build that way
[x] configure bro for kafka
[x] run script to bro -r some pcaps
[x] Cleanup and refactor
[x] end to end
[x] output kafka messages to file
[x] readme
[x] output bro logs and kafka logs to same directory
[x] break up kafka logs by bro log type
[x] summarize line counts for logs in csv
[x] show results in script
Pull Request Checklist
Thank you for submitting a contribution to Apache Metron's Bro kafka writer plugin.
In order to streamline the review of the contribution we ask you follow these guidelines and ask you to double check the following:
For all changes:

[x] Is there a JIRA ticket associated with this PR? If not one needs to be created at Metron Jira.
[x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

For code changes:

[x] Have you included steps to reproduce the behavior or problem that is being changed or addressed?
[x] Have you included steps or a guide to how the change may be verified and tested manually?
[na] Have you ensured that the full suite of tests and checks have been executed via:bro-pkg test $GITHUB_USERNAME/metron-bro-plugin-kafka --version $BRANCH

[-] Have you written or updated unit tests and or integration tests to verify your changes?
[-] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[-] Have you verified the basic functionality of the build by building and running locally with Apache Metron's Vagrant full-dev environment or the equivalent?

I had a lot of trouble with compose, so I did it with plain run and a shared network.
We can look at compose later.

The idea, at least at this point is that when in the container you will have the 'built in scripts' that we have, and whatever scripts you have mapped into the container too.  the run_test.sh.template currently doesn't pass through the script dir parameter, I have to build it out at that top level.
So this will allow the user to write their own test scripts, maintained outside the code etc.

We will also have scripts that do docker exec etc to read from kafka etc.

Is there a reason the scripts in scripts/ have inconsistent permissions?  Should example_script.sh have execute, or maybe even just call it run_test.sh off the bat?

@JonZeolla , I was going to ask you about that, what do you think the best practice is for these permissions?

current send to end cmd is:
./scripts/download_sample_pcaps.sh --data-path=A_FULL_PATH &&  ./example_script.sh --skip-docker-build --leave-running --data-path=A_FULL_PATH && ./scripts/docker_execute_process_data_dir.sh &&  ./scripts/docker_run_consume_bro_kafka.sh

@nickwallen @JonZeolla, with the readme done, this is now ready for review

@nickwallen @JonZeolla, with the readme done, this is now ready for review

Thanks @ottobackwards .  I'll give it a run through.

I ran this up, but seemed to get a couple errors.
./scripts/docker_run_bro_container.sh: line 152: DOCKER_CMD_BASE: command not found

./scripts/docker_run_bro_container.sh: line 162: metron-bro-docker-container:latest: command not found

This is the command that I ran along with what I saw when the errors popped up.
$ ./scripts/download_sample_pcaps.sh --data-path=~/tmp/data  &&  ./example_script.sh  --leave-running --data-path=/Users/me/tmp/pcap_data && ./scripts/docker_execute_process_data_dir.sh &&  ./scripts/docker_run_consume_bro_kafka.sh

...

make[1]: Leaving directory `/root/bro-2.5.5/librdkafka-0.11.5/src-cpp'
Removing intermediate container c4b01dee8e27
 ---> 4301bf29af13
Step 23/23 : WORKDIR /root
 ---> Running in 3fac0790cfdc
Removing intermediate container 3fac0790cfdc
 ---> 02b3e630af02
Successfully built 02b3e630af02
Successfully tagged metron-bro-docker-container:latest
Running docker_run_bro_container with
CONTAINER_NAME = bro
NETWORK_NAME = bro-network
SCRIPT_PATH =
LOG_PATH = /Users/nallen/tmp/metron-bro-plugin-kafka-pr21/docker/logs
DATA_PATH = /Users/me/tmp/pcap_data
DOCKER_PARAMETERS =
===================================================
Log will be found on host at /Users/nallen/tmp/metron-bro-plugin-kafka-pr21/docker/logs/bro-test-Fri_Dec__7_16:51:06_EST_2018.log
./scripts/docker_run_bro_container.sh: line 143: DOCKER_CMD_BASE: command not found
./scripts/docker_run_bro_container.sh: line 144: DOCKER_CMD_BASE: command not found
./scripts/docker_run_bro_container.sh: line 145: DOCKER_CMD_BASE: command not found
./scripts/docker_run_bro_container.sh: line 146: DOCKER_CMD_BASE: command not found
./scripts/docker_run_bro_container.sh: line 147: DOCKER_CMD_BASE: command not found
./scripts/docker_run_bro_container.sh: line 152: DOCKER_CMD_BASE: command not found
===============Running Docker===============

eval command is:
bro bash

============================================

./scripts/docker_run_bro_container.sh: line 162: metron-bro-docker-container:latest: command not found
Running stop_container with
CONTAINER_NAME= kafka
===================================================
kafka
kafka
Running stop_container with
CONTAINER_NAME= zookeeper
===================================================
zookeeper
zookeeper
Running destroy_docker_network with
NETWORK_NAME = bro-network
===================================================
bro-network

And I see no containers running.
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

Docker Engine 18.09.0

ok, this is fixed.  The bashSupport formatter in IntelliJ break the array assignment.  Sorry, i didn't redeploy after a format and  document run.
Also, I don't think your pcap directories match.   And- I have found I need to pass full paths for both of those scripts/parameters.
When I ran your line I ended up downloading to  a folder '~' in my current directory.
Sorry for the trouble.  If you could suggest a good bash formatter that would be super.

how are we feeling on this?

On my backlog to continue reviewing.  May not be able to until tomorrow but I'll get all the containers built and such today to prep

I need to find time to try and get this working.  Am still running into the problems I described above.

@nickwallen do you have any suggestions for default directories for that case then?  I wanted to leave it configurable, the idea being that you would have your version of the script for your environment

it, would defaulting ~/tmp/metron-bro-kafka-run/data|logs or something?

@ottobackwards said: do you have any suggestions for default directories for that case then? I wanted to leave it configurable, the idea being that you would have your version of the script for your environment

The configurability is nice.  All the start script would do is just run all those options.
Could we just use a data directory in the source tree;  docker/data?  And just .gitignore it?  Makes the least assumptions about a user's environment.

Ok, I'll default to that and make it configurable.  I can imagine having multiple pcap sets and not wanting to copy them around etc.

@nickwallen @JonZeolla please see the latest commits, updated PR description and README.
I have refactored it such that there is a working end to end test script that outputs kafka messages to log, and a finish script to cleanup.

Don't forget that in order to install this in a bro cluster the repo needs cloned.  I'm a bit hesitant to suggest that in every case those pcaps should be a part of that.  I prefer the dynamic download w/existence check for that reason.

Regarding Q2, when I ran this up I saw it segfault as expected after each pcap was done processing.

@JonZeolla: Regarding Q2, when I ran this up I saw it segfault as expected after each pcap was done processing.

You just had to watch the output as it progressed to see this?  It did not stop processing mid-stream because of the seg fault?

For Q3 I was thinking a quick win would be making sure the number of messages pulled off of kafka lines up with the number of log lines written to disk by bro in .log files (after removing the standard bro log file header, or we change the bro config to write JSON to disk and just do a 1:1 comparison).  Of course we could take it further and look at content as well.  I don't think that necessarily needs to be a part of this PR although it could be.

@JonZeolla: For Q3 I was thinking a quick win would  would be making sure the number of messages pulled off of kafka ...

Yeah, I think we could do a couple things to make this more "test-like" so we can run it as part of a CI build.  I agree with you that what @ottobackwards has here should go in as-is, rather than add scope.

 So say I am working on enhancing the plugin and I want to test the changes that I've made using this.  What commands do I need to run to do that?
I assume there is a more efficient way than running end-to-end each time.  Just building Bro itself takes a significant amount of time.

Please align the PR title and the JIRA

It appears that the kafka logs are somehow getting accumulated across each pcap run.  Here is an example using capture_loss:
> for x in `ls`; do echo $x;cat $x/results.csv; done | grep capture_loss
capture_loss,      41,      41
capture_loss,       1,      42
capture_loss,      13,      55
capture_loss,       1,      56
capture_loss,       1,      57
capture_loss,       1,      58

+1 This looks great, I reran it and the numbers are much more similar (although not perfect).  This likely indicates an issue with master and not in this PR.  Specifically:
LOG           BRO_COUNT  KAFKA_COUNT
http              4511       4545
x509                46         96
========================================================

--> /Users/jzeolla/tmp/metron-bro-plugin-kafka-pr21/docker/test_output/Tue_Feb__5_12_49_14_EST_2019/exercise-traffic_pcap/results.csv
LOG            BRO_COUNT  KAFKA_COUNT
http               2514       2517
x509                 56        108

@nickwallen does your +1 still hold from here?
Great job @ottobackwards

Noteworthy:  I reran this from scratch and got the exact same output - same pcaps caused the same counts in the BRO_COUNT and KAFKA_COUNT columns.

Here are some tickets for follow-on work:

METRON-1991
METRON-1990
METRON-1914

I am a +0 on this.  I just haven't had time to review since the first time I did.  And since that time many changes have been made.
I think we should merge it though, based on @JonZeolla 's +1.  Thanks for all the hard work @ottobackwards !

And most critically, I was waiting on this to land so that we could start looking at #20 and METRON-1910.

thanks!


Pipeline's agents checkout code only once

Hi,
I've been googling the whole day, and could not find an answer to my problem:
I have a pipeline, with 3 jobs inside, they have their own agents, so they can run parallel ideally. Let's assume, that I can run 2 jobs in parallel only, and these jobs take a lot of time (let's say around 30 min). When the last job starts, there are certain situations that a merge has already happened, and all my agents checking out the code from a specific branch, this means that the last agent will work with a different codebase.
How can I check out the code only once for a given pipeline and have all the agents use that same code until my pipeline finishes instead of checking out the code again and again? This happened with me, when multiple PRs were reviewed and merged.

So apparently it does checkout the same commit in a given pipeline, my problem was, that I used multiple pipelines. Closing this.


Integrate transcripts on videos

Setup the logic that will call our YouTube and Cloud Natural Language processing wrappers to pull down transcripts for a video.
Store the resultant data on our Video model.

Complete


transfers: support WEB files with ACH

PayGate Version: v0.8.0
What were you trying to do?
When trying to send an ACH payment v0.7.x supported creating WEB files. Now after the upgrade they are no longer supported. Only PPD is handled.
What did you expect to see?
Sending WEB files extends the capabilities of PayGate for various needs.

Previously we sent WEB files when that SEC code was specified along with PaymentInformation which was passed directly into the ACH file itself.
An initial implementation could be to have an object to dictate the payment method that must be used. ACH vs Wires, etc along with an object for that payment rail with further fields if needed. Thoughts? /cc @wadearnold
POST /transfers

{
   "paymentMethod": {
     "method": "ACH",
     "ach": {
       "secCode": "WEB"
     }
   }
}


[BUG] TriggerSessionManager crash

Have this crash in crashlytics. 3.0.0-rc1. Please, review thanks.
Crashed: com.apple.root.user-initiated-qos.cooperative
0  libobjc.A.dylib                0x2e5c objc_retain_x0 + 16
1  libobjc.A.dylib                0x2e5c objc_retain + 16
2                   0x45c97c static TriggerSessionManagerLogic.outcome(presentationInfo:presentingViewController:paywall:triggerResult:) +<PHONE_NUMBER> (<compiler-generated>:4377512316)
3                   0x45a6d4 (1) suspend resume partial function for specialized TriggerSessionManager.activateSession(for:on:paywall:triggerResult:trackEvent:) + 148 (TriggerSessionManager.swift:148)
4  libswift_Concurrency.dylib     0x40f6c swift::runJobInEstablishedExecutorContext(swift::Job*) + 420
5  libswift_Concurrency.dylib     0x41e78 swift_job_runImpl(swift::Job*, swift::ExecutorRef) + 72
6  libdispatch.dylib              0x15a6c _dispatch_root_queue_drain + 396
7  libdispatch.dylib              0x16284 _dispatch_worker_thread2 + 164
8  libsystem_pthread.dylib        0xdbc _pthread_wqthread + 228
9  libsystem_pthread.dylib        0xb98 start_wqthread + 8

I don't think we have enough information here to determine what's causing the crash. There's nothing obvious that pops out for me. Do you have any more info? How many times has this crash occurred?


fix ie8, has no getComputedStyle

Could be closed

Seems to be closed by https://github.com/jonathantneal/closest/commit/c55fe0904c43b96bea4f6b5cd6a16ad25f86cfb8


Add SashiDo to your wiki on Community links

Hey guys,
SashiDo.io is a Parse Server Hosting Provider.
We takes care for the server management, so you can focus on your apps. As easy as before.
What You'll Enjoy:

[x] 14 Days Free Trial.
[x] Free Parse Migration in a Click.
[x] Free File Migration in a Click.
[x] Free Migration from any Parse Server without any down time! (contact us)
[x] Auto-Scaling.
[x] 24/7 Support.
[x] Database Optimization.
[x] Multi-Geo Coverage. (currently EU region, US and Australia regions are coming)
[x] Advanced Cloud Code.
[x] Static Web Site Hosting.
[x] NodeJS App Hosting.
[x] You can use your own Domain + SSL certificate for your end point. (contact us)
[x] Free Private GitHub Repository.
[x] Beautiful & Lightning Fast Dashboard.
[x] Push Notifications.
[x] Background Jobs. (coming on 15.09.2016)
[x] Advanced Logs. (coming on 15.09.2016)
[x] Webhooks. (coming on 15.09.2016)
[x] API Console.
[x] Social Logins.
[x] Email Integration.
[x] Global Configs.

... and we will not stop here :) we have more Features and Surprises for you!
Stay tuned :) www.SashiDo.io
Happy Coding & Viva La Open Source,
SashiDo Team

+1

+1
These guys are awesome!

@pivanov can you give me a one liner as you want to see it in the community links? (I definitely can't put all there in there )

Hey @flovilmart thanks in advanced. Here is the oneliner:
SashiDo - Affordable managed Parse Server hosting with care! Migration in a click. Auto Scaling. Simple and flexible pricing

Done! Thanks @pivanov

+1
Very active and helpful!


Add mistral.ai API and Azure Mistral

Mistral.ai large and small proprietary models now support OpenAI compatible function calling and should therefore be possible to integrate.
Available via „la platforme“ and Azure. Both options should be provided.

As of now, there are some issues with function calling in the API and Azure, as well as diverging behavior between the two platforms. This needs to be resolved first.


wallet bitshares instance

Providing bitshares instance for Wallet, get Account by bitshares instance

Thank you for the pull request.
I have worked this out in python-peerplays already.
You mind looking into https://github.com/PBSA/python-peerplays/commit/9cee1010
and sending another PR that keeps those too libs in line?


[Doc]Add new Code Suggestions

I would like to add some suggestions in the General section of the code suggestions.

When adding a new file, you need to add the apache protocol in the header of the file.

Below are my reasons.
I'm a novice contributor and I checked out Code Suggestions before starting to contribute.
At first I didn't know that all files need to be added with apache's open source license.
While fixing this issue， I spent a long time troubleshooting.
Maybe newbies don't know about it before they start contributing, and it also takes their time.
So I want to add this suggestion, can I submit a PR?

https://shenyu.apache.org/community/code-suggestions  add here


Possibility of adding a working demo code

Hello,
Thank you for such a wonderful work and open-sourcing it. However, if a working demo code could be added, then naive users like me would find it more comfortable using the library. Therefore, could you please add some working demo code of experiments mentioned in the paper using some  seed network.

You can find example networks here:
https://github.com/tensorflow/models/tree/master/research/slim/nets
There you can find networks such as Inception and Resnet family of architectures.  Once you are familiar with training those networks, you can follow the MorphNet guide to try out MorphNet.  You can check out TF-slim for a working example in a Python notebook.

I don't think one is willing to use slim to try MorphNet...

@Aspirinkb Interesting point :)
Could you suggest a specific model (and open source code for it) that you will be happy to see the MorphNet demo for.

@eladeban Considering Keras is so popular and has a close relation with TensorFlow, so I think a model in Keras is a good start. What do you think ResNet50?

@eladeban Considering Keras is so popular and has a close relation with TensorFlow, so I think a model in Keras is a good start. What do you think ResNet50?

For instance, cifar10_resnet.py trains a ResNet on the CIFAR10 available at
https://github.com/keras-team/keras/tree/master/examples
I will be interested to see a modified version of cifar10_resnet.py that proposes a new model by adjusting the number of output channels in each convolution layer.

(Also related to #41 ). A demo with a detection model from https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/detection_model_zoo.md would be very helpful in addition to classification demo. I'd pick ssd_mobilenet_v1_0.75_depth_quantized_coco if I were to suggest one that I'd be happy to see MorphNet demo for.

Any update on a keras resnet example?

Sorry about the delay, but we don't have the bandwidth to do these examples. We will be more than happy to show case such examples here if somewhat is willing to take the task.

In case anyone is still interested (a year later), I have been working on creating examples for this really cool library, hoping that more people make use of it.
The tutorials are here, for now I only have created one and am working on a couple more. If anyone's interested in seeing more of this or has any comments please contact me or open an issue in that repo.


[BUG] Update to the latest version (from 1.0.0 and 1.0.2, zip) leads to update error and app crush on launch

After trying to update current version (downloaded zip, not installer) I've got next error:

Can guess that it because I don't have "Path of Building" folder on that path:

Sadly, there are no ways to fix it and that leads to app crash on launch:

Sorry about that! Seems I neglected to test the update function on the standalone version.
The bug should be fixed now; you'll need to re-extract the zip file and start the program again to get the fixed version.

Update error gone, but app still crashes.
Unpacked zip in a new directory, started PoB.exe as administrator, update went smooth, but then again:

@Openarl can we continue here or should I open a new issue?

We'll continue here, since it looks like the first crash is still occurring. Not sure where the crash is coming from at the moment; it looks like it's crashing very early in the program initialization, which is odd as there's not much going on at that point.

Could you try something for me? I just need to rule out one possibility.
Extract ONLY "SimpleGraphic.dll" from the zip and try running the program. If it does start, don't click Apply Update because it'll replace it again.

I was having the same issue he was describing, extracting SimpleGraphic.dll to replace the new one fixed the issue. Hope this information helps.

It does indeed! I've only made one change in that dll once since the initial release, so that must be the culprit. Not sure why that change is causing the crash though; it was intended to fix another bug that someone was having. I'll need to investigate further.

I've just pushed another update that may resolve this crash. Please let me know if it works!

Sorry for the late answer, was a bit afk.
I can confirm that replacing current "SimpleGraphic.dll" with dll from zip solves the problem.
Going to check your last update now. Can I safely press 'Apply Update' button?

Yep, go for it. It will download the version that I just put up.

Crashing persists with the most recent update

Ok, so now step by step:

Extracted 1.0.0 from zip
Started PoB.exe
After update was done it crashed
Replaced dll once again
Started PoB.exe
Launched successfully (ver 1.0.9)
Pressed 'Apply Update' button
Crashed again

Damn. Looks like I'll have to revert the earlier change until I figure out another way of fixing the bug it was intended to fix. But before I do that I'd like for one of you to try out this version of the DLL, just to make sure.
SimpleGraphic.zip

Extracted your dll into the last folder (step 8 from prev comment)
Started PoB.exe
Launched successfully (ver 1.0.9)
Pressed 'Apply Update' button
Crashed again

Any other specific conditions you want to test it with?

Ok, is there any text in the console window when the crash occurs? I saw that there wasn't in the first screenshots but I made a minor change in the DLL version that I just provided which may cause some text to show up. I need to know if that text is there!

Oh sorry, I should have mentioned, after extracting the DLL I gave you, you must not click Apply Update or it'll overwrite it.

W/o clicking 'Apply Update' it acts like the original ones (from 1.0.0 zip) - app launching successfully.

Ahh excellent! So that means the version I gave you is good. Well, I now know exactly what's causing the crash, but not why. That's something I'll need to look into later. For now, I'll be pushing an update containing the version I gave you, so you'll be able to safely update the program.

Great, thanks.
And you really have to add some debug mode with log output :) So users can provide much more helpfull info on their issues.
I'm somehow familiar with lua (back to old 2000 and WoW addons), but things happening around now totally looks like some dark fcking magic to me :D

And reporting success here.
V 1.0.10 updated without any problems ,yay!

Good to hear!
RE debug mode... the thing is, it does actually have such a mode, but in this case the program was crashing before any of that was set up. It would initialize the debug console, create the main window in the background, and then immediately crash. The cause turned out to be the particular set of window styles on the main window, but god only knows why...

Okey then.
If you'll need further testing on this - let me know.

Ok thanks; I may need to take you up on that offer sometime because I'll be damned if I can get this crash to occur on my system. I'm currently going through the code again to see if I can pinpoint any possible crash triggers.

Ok, found and corrected 2 possible triggers. Could you please try out this version?
SimpleGraphic.zip
And again, I just need to know if it starts up successfully with this DLL.

Sure. Will report in a few mins.

Nope, it didn't work. Crashed.
And there were no any console with text in it, jsut to mention.

Daaaamn. Ok this has got me stumped. I'll have to come back to this another day.
You'll need to extract one of the working versions to get it going again.
Thanks for your help!

And...  I think I may have pushed the wrong version of the DLL with the latest update; I've reissued it with the proper version now. Let me know if it's fixed.

Yep, fixed for now.

Ok good, closing this for now.


Token Vending Example - Issue with Deploy

I've noticed that if you try to deploy this example while you are logged in to ECR, you'll receive an error 403 Forbidden. You might want to include a note about this in your README.
Reference
Solution:

Thanks for the report! we will check it out.


Fix completions for table type descriptor and table constructor expressions

Purpose
$subject
Fixes #35117
Approach
Added completion support for union (of records) row type parameters.
Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[x] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[x] Added necessary tests

[x] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Shouldn't we provide completions for the following scenario as well? Or can we ignore this since Person is redundant?
type Student record {
    readonly string name;
    int age;
};

type Person Student;
type PersonTable table<Person> key(name); // missing completions for 'name'

 PersonTable tbl = table key(name)[ // missing completions for 'name'
      { name: "A", age: 1 },
      { <cursor>}   // missing completions for 'name'
    ];
    ```

I had a look at this. When using type aliases like this, we have to use recursion and it may lead to stack overflow issues we had with default value generation. Therefore, IMO, we should ignore this case. @nadeeshaan WDYT?

@IMS94 There are some checkstyle failures.


Every time I reopen obsidian, the load file sign is displayed

Well. I just think this might be a useful message. I will add a setting to toggle this sign (or notice) soon.

Well. I just think this might be a useful message. I will add a setting to toggle this sign (or notice) soon.

Thanks for your reply. Have a nice day.

I have just released an update that includes a toggle for this feature. By default, it is set to "false". Thank you for your feedback.


isSwaNameAvailable doesn't accurately report availability

Because the call staticSites.getStaticSite(resourceGroup, site);  uses the resourceGroup name, this check isn't all that accurate since it is specific to the resource group.  If we want to keep sites subscription-unique, I should be using staticSites.list() instead.
However, this won't block users as the resourceGroup name will be incremented if it already exists.  Just some weird, inconsistent behavior.

Actually, this can still cause issues if you select a resource group that has an app with the same name.  This is only possible with advanced create though.


Added documentation

The bin/ directory is included in your commit but bytecode shouldn't be put in the gh-pages branch.


[Dialect] Trace dialect for automatically profiling models

Don't forget to add .gitignore: buddy-mlir/examples/TraceDialect


How to create curve clip on top ?

how to make clip arch like this?

You just have to change some maths and it will be done. And I don't think this should be treated as an issue here so closing it.


Proposal: Offline Kaia Community Workshop at the Federal University of Agriculture, Abeokuta (FUNAAB), Ogun State, Nigeria

Description

[This workshop aims to onboard active participants into the Kaia blockchain community through in-person education and networking. We invite blockchain developers, transitioning developers, writers, designers, and creators to join us for a day of learning and connection.

Our objectives are to deepen participants’ understanding of Kaia, equip developers with skills to deploy smart contracts on Kaia, and empower non-developers to leverage their expertise in meaningful ways within the ecosystem. The workshop will feature interactive sessions, hands-on tutorials, and collaborative exercises tailored to each skill set. Our instructors will guide developers step-by-step on smart contract deployment, while content creators will learn strategies to maximize their impact on Kaia.
We aim to host 100 participants, with a split of 60% developers and 40% content creators. Attendees will leave with practical skills, valuable connections, and a unique opportunity to be part of Kaia’s growing blockchain community.]
Bounty track

[Education]

Approved in principal. Need to discuss on execution.
tagging @ayo-klaytn, can you review this quickly?

we can proceed with this proposal. Will work on execution with @Dolapolai
In the meantime, you can also provide your estimated budget.
Thanks

Hall — $17.5
Feeding — $75
Internet — free
Event Banner — (12*10 feet) — $20
Sound system — $10
Projector— $10
Logistic — $10
Refreshment — $80
Speakers welfare — $30 (3 speakers — 2 technical and one non technical).

Total 🟰 $252.5

Well received. @Dolapolai do you want to group feeding and refreshment together for $100 ?

Yes, I have reviewed it. Find the updated list below.
Hall — $17.5
Internet — free
Event Banner — (12*10 feet) — $20
Sound system — $10
Projector— $10
Logistic — $10
Refreshment — $100
Speakers welfare — $30 (3 speakers — 2 technical and one non technical).


[Prisma RN]: Replace old format

Docs-only Change

Replace all occurrences of the syntax screen:[] syntax with back ticks in the dir docs/en/enterprise-edition/rn

#Please always provide the GitHub issue(s) your PR is for, as well as test URLs where your change can be observed (before and after):
Fix #
Test URLs:

Before: https://main--prisma-cloud-docs--hlxsites.hlx.page/
After: https://--prisma-cloud-docs--hlxsites.hlx.page/
Worker: https://prisma-cloud-docs-production.adobeaem.workers.dev/?branch=

The commit from this PR is moved to PR#153, hence closing this PR.


Merge Microsoft.App-2022-03-01 to main branch

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Add a changelog entry for this PR by answering the following questions:

What's the purpose of the update?

[ ] new service onboarding
[x] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month.
When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month.
If updating an existing version, please select the specific language SDKs and CLIs that must be refreshed after the swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[ ] No refresh required for updates in this PR

Contribution checklist:

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[x] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

Change to data plane APIs
Adding new properties
All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

[ ] Check this box if any of the following apply to the PR so that label "WaitForARMFeedback" will be added automatically to begin ARM API Review. Failure to comply may result in delays to the manifest.

Adding a new service
Adding new API(s)
Adding a new API version
-[ ] To review changes efficiently, ensure you are using OpenAPIHub to initialize the PR for adding a new version. More details, refer to the wiki.

[ ] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If any of the following scenarios apply to the PR, request approval from the Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in a stable version
[ ] Removing properties in a stable version
[ ] Removing API version(s) in a stable version
[ ] Updating API in a stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

Hi @msyyc , for breaking changes, you could see description in the PR https://github.com/Azure/azure-rest-api-specs/pull/18137.
This change is from a preview API version(2022-01-01-preview) and we didnt expose it to Cxs. So it will never break user experience.

There are some issues with this PR. closing it.


NameError: name 'shape' is not defined

I tried to run compile_onnx_model.py, and I encountered the following error:
File "/drp-ai_tvm/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
    rv = local_pyfunc(*pyargs)
  File "/drp-ai_tvm/tvm/python/tvm/relay/backend/te_compiler.py", line 320, in lower_call
    best_impl, outputs = select_implementation(op, call.attrs, inputs, ret_type, target)
  File "/drp-ai_tvm/tvm/python/tvm/relay/backend/te_compiler.py", line 207, in select_implementation
    outs = impl.compute(attrs, inputs, out_type)
  File "/drp-ai_tvm/tvm/python/tvm/relay/op/op.py", line 126, in compute
    return _OpImplementationCompute(self, attrs, inputs, out_type)
  File "/drp-ai_tvm/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 237, in __call__
    raise get_last_ffi_error()
  3: TVMFuncCall
  2: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<tvm::relay::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#4}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)
  1: tvm::relay::OpImplementation::Compute(tvm::Attrs const&, tvm::runtime::Array<tvm::te::Tensor, void> const&, tvm::Type const&)
  0: tvm::runtime::PackedFuncObj::Extractor<tvm::runtime::PackedFuncSubObj<TVMFuncCreateFromCFunc::{lambda(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)#2}> >::Call(tvm::runtime::PackedFuncObj const*, tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) [clone .cold]
  File "/drp-ai_tvm/tvm/python/tvm/_ffi/_ctypes/packed_func.py", line 81, in cfun
    rv = local_pyfunc(*pyargs)
  File "/drp-ai_tvm/tvm/python/tvm/relay/op/strategy/generic.py", line 1600, in _compute_scatter_nd
    return [topi_compute(inputs[0], inputs[1], inputs[2], attrs.mode)]
  File "/drp-ai_tvm/tvm/python/tvm/topi/scatter.py", line 321, in scatter_nd
    out_buf = decl_buffer(shape, data.dtype, "out_buf")
NameError: name 'shape' is not defined

This error seems to occur in the source code.
Is there anybody who can avoid this error or fix this bug, and give me an advice?
Thank you in advance!

What were your args? compile_onnx_model.py doesn't play well with missing input arguments. Is this the full trace?
if -s is omitted, the shape is inferred to be [1, 3, 224, 224] (source) .
I might open a PR to add some checking for this script.


"Open in new tab" setting is ignored when creating a new link from the popup (with no pre-existing link text) if htmlAllowedAttrs or htmlAllowedTags params are present

Steps to reproduce

Go to a page containing an Ember form with the Froala RTE on. Ensure that either the htmlAllowedAttrs or htmlAllowedTags params are being set (see below for the values I'm assigning to these params)
Click in the Froala RTE
Without typing or selecting any text, click the link button in the toolbar
Type in a URL (I used "http://www.google.co.uk/")
Type in link text (I used "Google")
Check the "Open in new tab" checkbox
Click "Insert"

Expected result
The markup will be as follows:

Google

Actual result
The markup is missing the "target" attribute, and is as follows:

Google

Other information
I've tried this with ember-froala v2.1.0 and v2.2.4, and the issue is present in both.
Our Froala editor params are as follows:
froalaEditor: {
	params: {
		key: 'our key here',
		htmlAllowedAttrs: ['href', 'target'],
		htmlAllowedTags: ['b', 'strong', 'i', 'p', 'h3', 'h4', 'h5', 'h6', 'ol', 'ul', 'li', 'a']
	}
}

If I remove both of the "htmlAllowedAttrs" and "htmlAllowedTags" params, the issue goes away. With either of those present, the issue comes back.
What is also odd is that if I create a link by selecting pre-existing link text before clicking the link button in the toolbar, the issue doesn't happen - even with those params present.

Could you please make a jsFiddle? Thank you.

I've tried using both JSFiddle and CodePen, but neither seem to want to play ball with Ember.
If you use the above code, does it work for you?

Is it happening in a blank editor instance without Ember?

Couple thoughts; have you updated your bower.json dep for "froala-wysiwyg-editor"? While they are the same version, each have their own purpose.
What you are describing would be more of a Froala Editor issue specifically and not with the Ember addon. Therefore, you could make a JSFiddle without Ember and still reproduce the problem.

Hmm - I've managed to get Froala up and running in JSFiddle without Ember, but for the life of me, I can't seem to get the "insert link" toolbar button up and running.
Does anyone see where I'm going wrong?
https://jsfiddle.net/CodeCouch/bvrsrhb7/
Thanks... I had hoped that I'd provided enough information in the bug report for others to reproduce this..., as you can see, I'm having trouble doing so on a publicly-accessible URL!

Not sure what was up with your Fiddle, but take a look at this one: https://jsfiddle.net/Panman8201/4jxr3mfx/3/

Aah nice, I've updated it to have a console.log, which shows the problem as described above perfectly:  https://jsfiddle.net/CodeCouch/4jxr3mfx/5/
So it looks like the problem is with Froala, not the Froala Ember add-on.


fix scrolling problem - text won't display past initial height

Resolves #83

thanks for the PR @lane-c-wagner!


Add server name to top of pages

So that the user knows which server s/he is on (test vs. prod).

I think showing the server name is a good idea for all web forms. To avoid confusing non-Systems users I would only include the server name for test servers; no server name means it's production.


How to build a Chrome Extension that displays motivational quotes using Javascript.

How to build a Chrome Extension that displays motivational quotes using Javascript.
[Javascript] Developing a Chrome extension using Javascript.
Every Chrome Extension that exists on the chrome web store performs a  specific task. Over the years I have had to install a couple of extensions that either helped me accomplish tasks at work, or enabled me to maximize productivity. Having used the Pomodoro timer extension in the last few months, I noticed a steep increase in productivity so I thought to myself “I am going to build something similar” - A Chrome Extension that will display motivational quotes at scheduled intervals (cheesy right!). I had zero knowledge about how to build one until this point. Luckily, the official Chrome documentation helped me understand the concepts I needed to just get started with building what I wanted.
Chrome Extensions are relatively easy to develop, and yes you can create them locally on your machine and have them interact with any page on the web. Think of them as small applications residing on the browser and with their help we can access information about a website, and build awesome things with them.
In this tutorial, you the reader, and I are going to build a Chrome Extension using Javascript. its major functionality is to display random motivational quotes from an API. You would have learned about the core concepts used in this work, and this will just be sufficient to enable you to build something similar or even more complex.
At the end of the article the reader should be able to :

Build a basic Chrome extension
Fetch data from an API at scheduled intervals  using a special-purpose API called
chrome.alarms
Launch their extension on the chrome web store.
Learn how to install locally on their machine or share it with their friends without necessarily publishing it in the Chrome Web Store.

Article quality
In comparison to other articles, I came across while trying to build this project I could not get enough support on how to make scheduled API calls (plain javascript doesn't do it). No article applied this. I am happy that people who want to schedule API calls in their extensions will find this article invaluable.
Also, most of the articles I read preferred to use a popup at the top right of the page. They also needed to click the extension icon for the popup to display. I opted for notifications that display at the bottom right corner instead(so it doesn't cause a distraction), the same place where Windows notifications are received on your desktop. You do not need to click an icon to get a notification. I automated it.
References

https://developer.chrome.com/docs/extensions/mv3/getstarted/
https://www.youtube.com/watch?v=7Tu2j2pc87I&t=418s
https://www.youtube.com/watch?v=ew9ut7ixIlI&t=1s

Conclusion
The reader will learn how to build a Chrome Extension and make scheduled API calls using chrome.alarms

Good afternoon and thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.

Sounds like a helpful topic - let's please be sure it adds value beyond what is in any official docs and/or what is covered in other blog sites. (the articles should go beyond a basic explanation - and it is always best to reference any EngEd article and build upon it). @deverten
Please be attentive to grammar/readability and make sure that you put your article through a thorough editing review prior to submitting it for final approval. (There are some great free tools that we reference in EngEd resources.)
ANY ARTICLE SUBMITTED WITH GLARING ERRORS WILL BE IMMEDIATELY CLOSED.
Please be sure to double-check that it does not overlap with any existing EngEd articles, articles on other blog sites, or any incoming EngEd topic suggestions (if you haven't already) to avoid any potential article closure, please reference any relevant EngEd articles in yours. - Approved


support zuul debug according to zuul wiki

https://github.com/Netflix/zuul/wiki/How-To-Use#debug-logging

@markfisher


Extension setup for TOTP-based two factor

I would like to design an extension to Pow that does the following.
In the user context:

Provides an interface for model attributes to store an encrypted TOTP secret, the activation state of two-factor authentication, and a list of backup codes on the user's account.
I would preferably like to use cloak_elixir for encrypted attribute storage, but I have to maintain compatibility with Rails' attr_encrypted for my purposes, so it should be a pluggable interface of some sort.
I also have to maintain compatibility with devise_two_factor, which stores the backup codes as bcrypt hashes (ugh)

In the session creation action:

If the user's username and password match, requires that the user has also entered a valid TOTP code or a backup code, if two-factor authentication is enabled
Stores the consumed TOTP token into the user model to prevent replay

In the registration edit action:

Generates and stores a TOTP secret in the user before rendering the page, if the user does not currently have one stored

In the registration update action, if the user does not have two-factor authentication enabled and inputted a TOTP token that matched the secret:

Enables two-factor authentication on the user
Generates and stores 12 backup codes on the user

In the registration update action, if the user has two-factor authentication enabled and inputted a TOTP token that matched the secret:

Disables two-factor authentication on the user
Deletes the user's 12 backup codes
Deletes the user's consumed TOTP token

I've been going through the extensions code for Pow for some time now and I have to admit that I am rather thoroughly baffled by how it works. I tried to follow the code in the email confirmation extension, but I mostly just ended up making a complete and total mess.
Advice on where to start building a working extension that does the above from scratch would be appreciated. Thanks!

Sorry for the late response, I'm traveling atm, but will reply to this as soon as I'm back later this week. I think most of this can be dealt with through a plug.

Ok, finally able to take a look at this. Sorry for the wait. This relates to #6 that I'll look at when I have the time.
You can deal with this as a custom extension, but it would probably be easier to just build this straight into your app unless you got a good reason to make it an extension.

In the user context:

Provides an interface for model attributes to store an encrypted TOTP secret, the activation state of two-factor authentication, and a list of backup codes on the user's account.
I would preferably like to use cloak_elixir for encrypted attribute storage, but I have to maintain compatibility with Rails' attr_encrypted for my purposes, so it should be a pluggable interface of some sort.
I also have to maintain compatibility with devise_two_factor, which stores the backup codes as bcrypt hashes (ugh)

I'll assume you have the above layed out and ready to go. It's all in ecto schemas and context.

In the session creation action:

If the user's username and password match, requires that the user has also entered a valid TOTP code or a backup code, if two-factor authentication is enabled
Stores the consumed TOTP token into the user model to prevent replay

In the registration edit action:

Generates and stores a TOTP secret in the user before rendering the page, if the user does not currently have one stored

In the registration update action, if the user does not have two-factor authentication enabled and inputted a TOTP token that matched the secret:

Enables two-factor authentication on the user
Generates and stores 12 backup codes on the user

In the registration update action, if the user has two-factor authentication enabled and inputted a TOTP token that matched the secret:

Disables two-factor authentication on the user
Deletes the user's 12 backup codes
Deletes the user's consumed TOTP token

Ok, so here's where the meat of this reply will be. I'll use plugs to handle both the 2FA registration and TOTP requirement. I'll also add a custom controller for specific actions.
First let's set up some routes:
defmodule MyAppWeb.Router do
  use Phoenix.Router
  use Pow.Phoenix.Router
  use Pow.Extension.Phoenix.Router, otp_app: :my_app

  # pipelines ...

  pipeline :require_totp do
    plug Pow.Plug.Require2FAForUserPlug
    plug Pow.Plug.TOTPPlug
  end

  scope "/", MyAppWeb do
    pipe_through :browser

    resources "/register-totp", TOTPRegistrationController, only: [:new, :create]
    resources "/totp-phase", TOTPVerificationController, only: [:new, :create]
  end

  scope "/" do
    pipe_through [:browser, :require_totp]

    pow_routes()
    pow_extension_routes()
  end

  scope "/" do
    pipe_through [:browser, :require_totp]

    # ...
  end

  # routes ...
end

We want to make all routes except the 2FA registration and TOTP verification phase go through the two custom plugs.
Now let's set up the first plug that will require users to have enabled 2FA by redirecting them to the registration page if :encrypted_otp_secret hasn't been set:
defmodule MyAppWeb.Require2FAForUserPlug do
  @moduledoc """
  This plug ensures that a user has enabled 2FA.

  ## Example

      plug MyAppWeb.Require2FAForUserPlug
  """

  alias MyAppWeb.Router.Helpers, as: Routes

  @doc false
  @spec init(any()) :: any()
  def init(opts), do: opts

  @doc false
  @spec call(Conn.t(), any()) :: Conn.t()
  def call(conn, _opts) do
    conn
    |> Plug.current_user()
    |> case do
      nil  -> conn
      user -> maybe_require_2fa_registration(user, conn)
    end
  end

  defp maybe_require_2fa_registration(%{encrypted_otp_secret: nil}, conn) do
    conn
    |> Controller.redirect(to: Routes.totp_registration_path(conn, :new))
    |> Plug.Conn.halt()
  end
  defp maybe_require_2fa_registration(_user, conn), do: conn
end

And now let's set up the second plug to requires TOTP verification unless :encrypted_otp_secret hasn't been set:
defmodule MyAppWeb.TOTPPlug do
  @moduledoc """
  This plug ensures that a user session has a valid TOTP.

  ## Example

      plug MyAppWeb.TOTPPlug
  """

  alias MyAppWeb.Router.Helpers, as: Routes
  alias MyApp.Repo

  @doc false
  @spec init(any()) :: any()
  def init(opts), do: opts

  @doc false
  @spec call(Plug.Conn.t(), any()) :: Plug.Conn.t()
  def call(conn, _opts) do
    conn
    |> Plug.current_user()
    |> case do
      nil  -> conn
      user -> maybe_require_totp_phase(user, conn)
    end
  end

  defp maybe_require_totp_phase(%{encrypted_otp_secret: nil}, conn), do: conn
  defp maybe_require_totp_phase(user, conn) do
    conn.private
    |> Map.get(:pow_session_metadata, [])
    |> Keyword.get(:valid_totp_at)
    |> case do
      nil ->
        conn
        |> Controller.redirect(to: Routes.totp_verification_path(conn, :new))
        |> Plug.Conn.halt()

      _valid_at ->
        conn
    end
  end

  @doc false
  @spec update_valid_totp_at_for_sesion(Plug.Conn.t(), map()) :: Plug.Conn.t()
  def update_valid_totp_at_for_sesion(conn, user) do
    metadata =
      conn.private
      |> Map.get(:pow_session_metadata, [])
      |> Keyword.put(:valid_totp_at, DateTime.utc_now())

    config = Pow.Plug.fetch_config(conn)
    plug   = Pow.Plug.get_plug(config)
    conn   = Plug.Conn.put_private(conn, :pow_session_metadata, metadata)

    plug.do_create(conn, user, config)
  end
end

We've added a update_valid_totp_at_for_sesion/2 method to the above plug so we can update that value upon succesful TOTP answer.
That's it! Now we just need to fill out the blanks with the controller actions, but the above and the ecto context module(s) have majority of the TOTP logic.
defmodule MyAppWeb.TOTPRegistrationController do
  use MyAppWeb, :controller

  def new(conn, _params) do
    changeset = Pow.Plug.change_user(conn)

    render(conn, "new.html", changeset: changeset)
  end

  def create(conn, params) do
    conn
    |> Pow.Plug.current_user()
    |> MyApp.Users.User.totp_changeset(params)
    |> MyApp.Repo.update()
    |> case do
      {:error, changeset} ->
        render(conn, "new.html", changeset: changeset)

      {:ok, user} ->
        conn
        |> MyAppWeb.TOTPPlug.update_valid_totp_at_for_sesion(user)
        |> redirect(to: Routes.page_path(conn, :index))
    end
  end
end

defmodule MyAppWeb.TOTPVerificationController do
  use MyAppWeb, :controller

  def new(conn, _params) do
    changeset = Pow.Plug.change_user(conn)

    render(conn, "new.html", changeset: changeset)
  end

  def create(conn, params) do
    conn
    |> Pow.Plug.current_user()
    |> MyApp.Users.User.valid_totp?(params)
    |> case do
      false ->
        conn
        |> Pow.Plug.clear_authenticated_user()
        |> put_flash(:error, "Sorry, invalid TOTP. Please sign in again.")
        |> redirect(to: Routes.pow_session_path(conn, :new))

      true ->
        user = Pow.Plug.current_user(conn)

        conn
        |> MyAppWeb.TOTPPlug.update_valid_totp_at_for_sesion(user)
        |> redirect(to: Routes.page_path(conn, :index))
    end
  end
end

So this is just the outline of how I imagine it could work. You'll have to work in all the TOTP logic from here. I hope I'll get time to work on #6 soon, there may be things in Pow that can be changed to make make it super easy plugging this stuff in. The above has a pretty simple simple catch-all approach there may not be desired for all situations.
Let me know if this helps!

@danschultzer Thanks, I'll be giving this a go.

I think I've almost got it. There only seems to be a small (heh) snag, which is that the "valid" status of the TOTP authentication isn't being stored in the session.
I have verified that the code correctly marks the TOTP token as consumed and updates that in the database. However, once it gets here...
https://github.com/derpibooru/philomena/blob/7784c09b3ec63ae6556d6f9825ed7d0c4302ef52/lib/philomena_web/controllers/session/totp_controller.ex#L25-L28
...and then calls here...
https://github.com/derpibooru/philomena/blob/7784c09b3ec63ae6556d6f9825ed7d0c4302ef52/lib/philomena_web/plugs/totp_plug.ex#L44-L57
... it simply redirects back to asking for a new TOTP token, meaning that state must not have been stored in the session. Routes here.

Update Pow in your deps to v1.0.14. It adds metadata to sessions.

Okay, it looks like that mostly works. I am still having an issue with the session TotpController. In particular, this code
  def create(conn, params) do
    conn
    |> Pow.Plug.current_user()
    |> User.consume_totp_token_changeset(params)
    |> Repo.update()
    |> case do
      {:error, _changeset} ->
        {:ok, conn} =
          conn
          |> Pow.Plug.clear_authenticated_user()

        conn
        |> put_flash(:error, "Sorry, invalid TOTP token entered. Please sign in again.")
        |> redirect(to: Routes.pow_session_path(conn, :new))

      {:ok, user} ->
        conn
        |> PhilomenaWeb.Plugs.TotpPlug.update_valid_totp_at_for_session(user)
        |> redirect(to: "/")
    end
  end

works fine when the token is valid, but takes multiple seconds when the token is invalid, and then fails to clear the session.

You need to pass on the conn after calling Pow.Plug.clear_authenticated_user/1:
  def create(conn, params) do
    conn
    |> Pow.Plug.current_user()
    |> User.consume_totp_token_changeset(params)
    |> Repo.update()
    |> case do
      {:error, _changeset} ->
        {:ok, conn} =
          conn
          |> Pow.Plug.clear_authenticated_user()
          |> put_flash(:error, "Sorry, invalid TOTP token entered. Please sign in again.")
          |> redirect(to: Routes.pow_session_path(conn, :new))

      {:ok, user} ->
        conn
        |> PhilomenaWeb.Plugs.TotpPlug.update_valid_totp_at_for_session(user)
        |> redirect(to: "/")
    end
  end

Pow.Plug.clear_authenticated_user/1 does not return a Conn; it returns a 2-tuple {:ok, conn}, hence my construction above. I am correctly passing on the conn as far as I can see.

Oh, sorry you're right.
How does consume_totp_token_changeset/2 work? Do you use a TOTP library that could cause the wait due to e.g. time drift?
As for the session not being cleared, what happens when you get redirected to Routes.pow_session_path(conn, :new)? Do you get redirected again?

The delay when the token is invalid seems to be caused by the large number of trials in pot, the library I chose to use to check them; my bad. consume_totp_token_changeset/2
I'm not sure what changed, but it does seem to be clearing the session redirecting correctly now. Thanks very much for your help!

Addendum: this solution works great in isolation and hasn't had any problems. However it interacts less than gracefully with the PowPersistentSession extension: the user is prompted for a new token every time the browser is restarted. How can this be avoided?

Good call. It's no possible currently since PowPersistentSession can only pull the fingerprint from the current session. I've opened #330 so custom metadata can be added to the persistent session and applied to subsequent sessions. I'll see if I can look at it tomorrow and come up with a solution.

I've opened PR in #332, so the way you would fix this (if you use the PR {:pow, github: "danschultzer/pow", ref: "persistent-session-metadata", override: true}) is to just update the persistent session with the appropriate metadata:
conn =
  conn
  |> Plug.Conn.put_private(:pow_persistent_session_metadata, session_metadata: Keyword.take(metadata, [:valid_totp_at]))
  |> PowPersistentSession.Plug.Cookie.create(user, config)

I've updated the example above https://github.com/danschultzer/pow/issues/318#issuecomment-552608811.

@liamwhite did that PR work as expected for you?

@danschultzer It seems to, though I admit that I haven't done any rigorous testing other than closing my browser a few times

That would be sufficient :rocket: I'll review the PR tomorrow with fresh eyes and get it merged it in.

Fix has been merged to master.

Too bad this isn't an extension. Would love to just drop it in on my own app(s). :slightly_smiling_face:


No system tray icon in my Linux so I can't try switching to the YTM beta mode :/

Checklist:

[X] I have checked that there are no issues with similar or the same content

[X] I have checked the FAQ (https://github.com/MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-/wiki/FAQ) and the answer I am looking for is not there

[X] I have double checked and can reproduce the issue

OS:
CentOS Linux release 7.4.1708 (Core)
GPMDP Version:
google-play-music-desktop-player-4.6.0-1.x86_64
Issue Descriptions:
Supposedly the 4.6.0 release introduces beta support for YTM (Youtube Music) by going to the system tray icon.
Sadly, not all Linux builds support systray icons. Mine is one of those, and I have no way to beta test YTM.
Would it be possible to sneak that into the Settings window somewhere? Then I could try it.

Raised elsewhere, basically this will happen once we have proper UI injection support for YTM

Okay, thanks! I'll wait.

There is no way to enable YTM by editing GPMDP config files?


style(transformer/react-refresh): fix whitespace

Style nit. Fix whitespace/indentation. Not sure why rustfmt didn't do this automatically.

#6813  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @overlookmotel and the rest of your teammates on  Graphite

Cosmetic change only, so merging without review.

Merge activity

Oct 23, 7:52 AM EDT: The merge label '0-merge' was detected. This PR will be added to the Graphite merge queue once it meets the requirements.


Documentation for installing etcd on RHEL

This change removes references to the ACL manager and instead documents how to download and install etcd on RHEL.
The next step of this is to get some tests of these instructions: that's with you @DaveLangridge.

A few changes suggested.

adduser intruction should be something like:

adduser -s /sbin/nologin -d /var/lib/etcd/ etcd

RAM disc stuff. On control, after creating user.(same as ubuntu instructions.)

mount -t tmpfs -o size=512m tmpfs /var/lib/etcd
then add to end of /etc/fstab/
tmpfs /var/lib/etcd tmpfs nodev,nosuid,noexec,nodiratime,size=512M 0 0

install of etcd (controll and compute)
mv etcd* /usr/local/bin/
(to move ectdctl as well as etcd)

Need extra installs to build python-etcd (compute node already has the dev tools bit):

yum groupinstall 'Development Tools'
yum install python-devel libffi-devel openssl-devel

Joint compute/control node doesn't need etcd stuff again. (Same bug in ubuntu instructions.)

Don't need to change PluginAddress in felix.cfg. (step 15 of compute)

Also needed yum install python-gevent

Explicit instructions for python-gevent will not be needed, assuming https://github.com/Metaswitch/calico/pull/442 goes in.

@Lukasa , @DaveLangridge is planning to test an install on RHEL6.5 tomorrow morning, so I wonder if it would be possible for you to make the remaining doc markups, and for me to merge them, today?  Then @DaveLangridge 's testing can also recheck the complete doc.

@DaveLangridge Ok, I've applied the markups.


Bump up trigger files for prod bundle release

Releasing bundle artifacts to prod for release 0.12.1
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve


[DO NOT MERGE] Auto PR to update dependencies of istio

This PR will be merged automatically once checks are successful.
none

@istio-testing: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-suite-rbac-auth.sh
8e3c721bef72ffcd63d0d657d9d1500d2323ca8d
link
/test e2e-suite-rbac-auth

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


No Longer able to Use Expressions in URL

Summary
I installed package in our sandbox on 1/14/2021. When I installed in production yesterday (2/4/2021), a key feature - the ability to use expressions (custom labels) in the URL for the viz - no longer works.
Steps To Reproduce:

Install package in new Salesforce org
Add Tableau Viz LWC to a Lightning page (record, app, any)
On URL configuration, attempt to use an expression in the URL ([!Lable.CustomLableName}

Expected result
LWC should take URL with expression as a valid entry
Actual result
Receive error message saying that expressions are not allowed and to remove them.  Also, in hover text over information icon, there is no mention of using expressions.
Additional information
Installed in sandbox on 1/14/2021 and this functionality was allowed and worked like a charm with expressions.
When installed on 2/4/2021 in production, the new error message (see actual result) appears; hover text no longer mentions expressions.
Sandbox (1/14 installation):

Production (2/4 installation)

Version 1.2, same publish date.
We are using Tableau Server

Hi Tom,
Thank you for reaching out.
It might be a permission issue. Do you have the same set of permissions in the sandbox and production?
Can you also check if you are on the same Salesforce version in your sandbox and production? If yes, does it still work in your sandbox?
Thanks,
Gigi

Hi Gigi -
I do have the same permissions in all orgs (System Admin), but you were right in having me check the SF version.  In our full sandbox, which has been updated to v51, we have the ability to use expressions.  In v50 (prod and our dev sandboxes), it is not available.
I found this in the Release Notes for Spring 21 (v51):
https://help.salesforce.com/articleView?id=release-notes.rn_forcecom_lab_expressions_in_comp_labels.htm&type=5&release=230
Can you confirm this is probably the culprit?
Thanks,
Tom

Yes, you should wait for your production environment to be updated to v51.
Thanks,


Release 3.1.0 not available in CocoaPods

Hi!
I see that the last CocoaPods release is 3.0.0, however the current podspec says 3.1.0, are we perhaps just missing a push to CocoaPods?
Thanks!

Hi @gobetti I am coming back to the project after quite a bit of absence (We are now at 5.1.1).
I am going to close this for now, don't hesitate to reopen if needed :)
PS: Better late than never, I guess


Add meetup.com gatherings to a map on loklak and implement tweets

When should events tweet?
a) When events are posted, changed or canceled
b) When events start
c) When events end
d) When someone posts a comment or photo
e) When someone joins the group
f) When someone signs up for a meetup
Reference: http://www.meetup.com/meetup_api/

To be implemented in server.


readme - Prerequisites

Hi, please could you update the readme, not 100% clear for new users:
Prerequisites
You need at least one steam integration to use this card.
https://www.home-assistant.io/integrations/steam_online/
That took me minutes to setup and the card is brilliant, thanks for your work on this.

oh ofc! sorry I missed that! glad you like the card! :-)

oh ofc! sorry I missed that! glad you like the card! :-)


Accept many Secrets / ConfigMaps for .spec.varsFrom

I can take a look at this today.
Should look something like this (similar to the HelmRelease valuesFrom  field):
apiVersion: infra.contrib.fluxcd.io/v1alpha1
kind: Terraform
metadata:
  name: sample-stack
spec:
  path: ./
  sourceRef:
    kind: GitRepository
    name: sample-repo
  varsFrom:
  - kind: ConfigMap
    name: variables
  - kind: Secret
    name: provider-credentials

indeed! Thank you @phoban01

On the assumption that values of the latter secret / config with the same keys will always override those of the former.


ADD: Hyva EE support

https://docs.hyva.io/hyva-enterprise/getting-started/index.html

Closing this, do the extra amount of local package would make the maintenance to big


Halcyon download failing with 503 error

When I use the hello-yesod example project, I get the following console output:
-----> Fetching custom git buildpack... done
-----> Haskell app detected

-----> Deploying with Haskell on Heroku
       BUILDPACK_URL:                            https://github.com/mietek/haskell-on-heroku

-----> Installing buildpack... done, fff7dba
-----> Installing Halcyon... done, 09001ce
-----> Installing bashmenot... done, 0016251
-----> Archiving app source
       Creating buildpack-app-source.tar.gz... done, 4.0KB
-----> Deploying environment
       GHC version:                              7.8.3
       Cabal version:                            <IP_ADDRESS>
       Cabal repository:                         Hackage
       External storage:                         public

-----> Restoring GHC layer
       Downloading https://halcyon.global.ssl.fastly.net/linux-ubuntu-14.04-x86_64/halcyon-ghc-7.8.3.tar.gz... 503 (service unavailable)
   *** WARNING: Cannot build GHC layer
   *** WARNING: Cannot deploy environment

-----> Buildpack deployed

-----> To build the app, use a one-off PX dyno:
       $ heroku run --size=PX build

       Next, deploy the app:
       $ git commit --amend -C HEAD
       $ git push -f heroku HEAD:master

-----> Discovering process types
       Procfile declares types -> (none)

-----> Compressing... done, 917K
-----> Launching... done, v4
       https://immense-dusk-5793.herokuapp.com/ deployed to Heroku

To git@heroku.com:immense-dusk-5793.git
 * [new branch]      master -> master

You'll notice that downloading Halcyon fails in the 'Restoring GHC layer' step. It looks like it's an SSL handshake issue, AFAICT.

The SSL handshake timeout in Fastly’s configuration has been increased, and as of https://github.com/mietek/halcyon/commit/4324f14c6020abe6b5b5f5c5f293dde2138fee33, Halcyon is back to using Fastly.