Autoencoder model

I added a relatively generic autoencoder model. It allows the encoding stage to be reused as a layer in subsequent networks, and it can be frozen using a trick I got from @kenterao in #56 . In order to make this concise, I had to modify the Merge layer to allow 'merging' a single model, so basically turning it into a container layer. Also happy to do this in a separate Container layer, but I think that would include some duplication.
One thing that is typically done in autoencoders, which for now has to be done by hand, is tying of weights. I couldn't come up with a neat way of doing this, while allowing general encoders and decoders. So I left it up to the enduser to do this for now (see the test to see how it is done.)
Let me know what you think, and I am happy to write documentation for this.

It would make much more sense to me to implement an autoencoder as a layer, rather than a model.
A layer that takes an input of arbitrary size, and has a single weight matrix as parameter. It would take the dot product with the weight matrix (projection) then the dot product with the transposed matrix (reconstruction). And return that.
For one, it solves the problem of weight symmetry/reuse. And it allows to easily stack autoencoders.
I haven't added an Autoencoder layer so far because I've never had to use autoencoders. If you're interested, feel free to add one.

The way I understand that stacking autoencoders work is training a first autoencoder, then training a second autoencoder using the hidden units of the first autoencoder as inputs. This is one reason why I think separating the encoder and the decoder makes sense. [1]
The other is that this allows for richer autoencoders.  But there are more options, such as denoising autoencoders, as implemented in the test. Really the encoders and decoders can be any combination of layers you like. Convolutional autoencoders can also be implemented in this framework.
Another reason why I think this should be a model onto itself is that it requires its own compilation and fitting stages, before being reused in a bigger network.
[1] http://ufldl.stanford.edu/wiki/index.php/Stacked_Autoencoders

Any more thoughts on this? I could write documentation, but I could also change things in the code if desired.
For what its worth, Autoencoders in Torch are built in a very simiar way, but the autoencoder model lives in a separate package for unsupervised methods.

+1 for model over layer, i.e. add autoencoder.py where have recurrent.py, etc
Reasons being:

for deep autoencoders the layers need to be trained using the hidden layer of the previous autoencoder
there are many types of autoencoders: spare, dae, conv, rnn(?) etc. These will form the layers of the model.

Also autoencoders are still useful for pretraining (2015 paper): http://arxiv.org/abs/1412.6597

A better solution based on the structure of keras is to implement a base Autoencoder class that inherits from Layer. Then DAE and such can inherit from this. We can then add a get_hidden(train) call to get the hidden layer of the autoencoder. I am almost done writing something up

See https://github.com/fchollet/keras/pull/180

One question: I don't understand your use of Merge. Could you clarify?

In order to connect decoder and encoder, I had to construct a Sequential of the encoder and the decoder. But because both of those are models here, I needed to wrap them as Layers. That is what I used Merge for.
Another option would be to have a separate layer to implement a separate Layer to only wrap a model, ie a container layer.


Add ecs_component_id!(Component) pseudo-macro to use in the body of query lambdas

Add an ecs_component_id!(Component) pseudo-macro to use in the body of query lambdas (e.g. in ecs_find_...). After evaluation this is replaced with the int literal corresponding to the ordinal/index of that component in that archetype. For example, if I declare ecs_archetype!(ArchFoo, 100, ComponentA, ComponentB, ComponentC);, the body of a query matching on ArchFoo would replace ecs_component_id!(ComponentB) with 1.
This is handy for bitflags in network serialization, and dirty flags for change detection.

This should also be accompanied by some way of setting the component ID manually, either a #[ecs_component_id(N)] attribute, or something more enum-like, like
ecs_archetype!(
    ArchFoo,
    100,
    ComponentA = 0,
    ComponentB, // 1
    ComponentC = 5,
    ComponentD, // 6
);

More thoughts on this: it may actually be worth making this explicitly opt-in, to avoid errors/issues from assumed IDs.
ecs_archetype!(
    ArchFoo,
    100,
    #[component_id(0)]
    ComponentA,
    #[component_id(1)]
    ComponentB,
    ComponentC, // No ID -- trying to use ecs_component_id!(ComponentC) is an error!
    ComponentD,
);

Maybe an opt-in component on the archetype to assign component IDs sequentially
#[sequential_ids]
ecs_archetype!(
    ArchFoo,
    100,
    ComponentA, // ID is 0 (implicit
    ComponentB, // ID is 1 (implicit)
    #[component_id(5)]
    ComponentC,
    ComponentD, // ID is 6 (implicit)
);


gentoo and generic GNU/linux support

it's all in the title, that would be nice.
eventually, when packages need to be installed, display a message with the required packages to let the user do this by hand ; since some distros do not use systemd (OpenRC is one of them), prompt the user to restart services by hand if required
side note: native 64-bits was available on the Pi with Gentoo at least 4 years before it was on any deb-based system

I have no plans to add gentoo. I've never used it and it seems like most people that have the patience to use it should have enough linux-fu to run some commands to install OctoPrint.

I don't quite agree with you. And I'm gonna be harsh.
I thought - and still want to believe - that by working on open software we were all seeking to create an entire eco-system where minds and spirits could be free.
Unfortunately it seems to me you're just using it for your very own purpose. I do have some "fu", but right now I have more important matters to deal with. Not that I don't want to, I just don't have the energy.

I've never used it

well maybe you should give it a try. And trust me, it was way more complicated a few years back ; something like when configuring X required finding the right combination of refresh rates and frequencies both graphics cards and monitor would support.

side note: native 64-bits was available on the Pi with Gentoo at least 4 years before it was on any deb-based system

hmm I wonder I much done by the "gentooists" profited to those who make the distribution you're running. It seems to me you're confusing "Linux" with "GNU/Linux".
At the very least, I would have hoped you would leave this issue open ; you (@paukstelis) are probably not the only one who might want to give it a try. At the very least, I was asking for an option to prompt the user to manually install deps and run whatever commands (in a generic form, such as displaying commands required for each supported OS in order to help figure out what to actually do) are required on their OS (there are others like Slackware, SMGL, LFS...), in the right order, so maybe they could contribute and this would make it easier for them to do so by not requiring them to read hundreds of lines of code instead of just walking away to something else. Because trust me, a fair amount of gentooists do read so much code every day that you would get a nausea from (and I write this because you just bluntly closed the issue with one of the crappiest argument I have ever heard from a dev).
So at the very least, re-open this issue and let someone - could be me for all I know - try to address it.

Yes, I made this for my own purposes and it will continue to be that way. If you want something different, create a PR, or fork it and do your own thing. I owe nothing to you, gentooists, or anyone else as far as this project is concerned.

thank you for giving me the best reason to never use octoprint, ever.

like... this feature request could have been a reminder I set myself - where it actually belongs - to improve octoprint. yet you discarded it just because you don't bother trying out gentoo (amongst other distros which I've named).
so what you're suggesting is I should make a fork and set a bug report on my own fork - which probably no-one will ever see unless they're masochists - therefore preventing others from thinking "well yeah I could have the time for that" or "uh what Gentoo/SMGL/LFS? never heard of it, I'm going to give it a look" and actually addressing the issue while I'm busy with (what I consider to be) more important stuff, just because... what? you want the open issues count on octoprint to be as low as possible?
 I'm done with you and your project.

I am not affiliated with OctoPrint in any way. This is just a tool for installing OctoPrint.
It is removed as an open issue because I am not going to work on it.
If you really want Gentoo added, you or someone else are welcome to do the work.

Good bye.


test-branch/execute-job/wrong-commit-sha-on-pr/7b639dd0-a10a-471c-9d2b-2f87ef8732d2

PR for testing d9e27d47a6ae296cb672650446f0fe5ce7bd9d21

/canonical/self-hosted-runners/run-workflows 931ad21dd9ace68aaa0a7d341e94de96ad93fa6b


Add {ANX}: {AnimeToken}

[○] I understand that token listing is not required to use the Polygon Wallet with a token.

Please provide the following information for your token.
Token Name: AnimeToken
Token Symbol: ANX
Decimals: 18
Polygon Address:  0xe57EAC8b4666032Cfa16b626FfE99403a40b64D3
Ethereum Address: 0x8DaDC5124714bEd53fbc603478De7D4BFEE1fF2a
Logo URI (svg): https://animebank.s3.ap-northeast-1.amazonaws.com/assets/anx.png
Project Name: AnimeBank
Project Summary: Anime Bank is developed based on the system of “Stakes.social (https://stakes.social/ )”, a sponsor platform to support engineers by Dev Protocol that has raised 200M JPY in a year.
We will announce the launch schedule of Anime Bank as soon as we receive an update from the developer.
Project Contact: https://docs.google.com/forms/d/e/1FAIpQLSdoUhSsfRJO2cB4ifoZaZfg6mUaKm2Oo6cXCYo4QF2UFsVk1w/viewform
Project Website: https://anime-bank.com/ (coming soon)

Added to AllTokens v2.8.0.


Enable Docker-slim tool

Problem
Docker-slim tool allows to reduce the size of the Docker images and improve the time required to download the image during the CI execution.
Change overview
This flag enables the execution of the docker-slim tool in case this is installed. This change also includes ameba as part of the building images in the CI.
Testing
The following table displays the sizes of the images generated with the tool

Name
Original
Slim

connectedhomeip/chip-build
2.63GB
3.71MB

connectedhomeip/chip-build-ameba
4.15GB
3.71MB

connectedhomeip/chip-build-android
7.21GB
3.71MB

connectedhomeip/chip-build-cirque
3.19GB
3.71MB

connectedhomeip/chip-build-crosscompile
5.2GB
3.71MB

connectedhomeip/chip-build-efr32
3.17GB
3.71MB

connectedhomeip/chip-build-esp32
5.49GB
3.71MB

connectedhomeip/chip-build-esp32-qemu
7.3GB
3.71MB

connectedhomeip/chip-build-infineon
4.73GB
3.71MB

connectedhomeip/chip-build-k32w
3.04GB
3.71MB

connectedhomeip/chip-build-mbed-os
2.64GB
3.71MB

connectedhomeip/chip-build-nrf-platform
4.14GB
5.46MB

connectedhomeip/chip-build-telink
6.73GB
3.71MB

connectedhomeip/chip-build-tizen
3.48GB
3.71MB

connectedhomeip/chip-build-vscode
22.5GB
3.71MB

Closing: I do not believe slim usage has sufficient stability to be consistently used. It seems suitable for long-running services but not as a build image base (it may remove unused headers and this would cause future builds trying to use such headers to fail)


Adding episodes to rosbridge:

episodes & framesperepisode added for rosbag recording
writing control inputs to bag

Description
@laurent-george - Hi - I added episodes to the existing ros bridge. Please review the changes !
Fixes #
Where has this been tested?

Platform(s): Ubuntu 16.04
Python version(s): 2.7
Unreal Engine version(s): 4.8

This change is

Review status: 0 of 5 files reviewed, 10 unresolved discussions (waiting on @aranga81)

.gitignore, line 32 at r1 (raw file):

_site
core
/.project

Minor, please remove this line from .gitignore (don't know where it cames from, but people don't have .project in default repo I guess that's only relevant for specific ide.

carla_ros_bridge/config/settings.yaml, line 10 at r1 (raw file):

  NumberOfPedestrians: 10
  WeatherId: 1
  Framesperepisode: -1

Maybee add a comment after Framesperepisode, something like:
Framesperepisode: 300  # use -1 to run it indefinitely ? What do you think ?

carla_ros_bridge/src/carla_ros_bridge/bridge.py, line 12 at r1 (raw file):

import rospy
from std_msgs.msg import Float32, Bool
from itertools import count

Please sort import : (I am not sure what is the carla guideline but I like to use:
standard library imports
third-party imports
application-specific imports

example:
import random
from itertools import count
import rospy
from std_msgs.msg import Float32, Bool
from carla.settings import CarlaSettings
from carla_ros_bridge.control import InputController
What do you think ?
@nsubiron  what do you recommend ?

carla_ros_bridge/src/carla_ros_bridge/bridge.py, line 64 at r1 (raw file):
Quoted 7 lines of code…

# control inputs - float std msgs
        self.steer = Float32(0.0)
        self.brake = Float32(0.0)
        self.throttle = Float32(0.0)
        # control inputs - Bool msgs
        self.reverse = Bool(False)
        self.hand_brake = Bool(False)

Not needed, already done using InputController class

carla_ros_bridge/src/carla_ros_bridge/bridge.py, line 153 at r1 (raw file):

        for frame in count():
            if frame == self.frames_per_episode:

please keep a is_shutdown() (so we can intercept a ctrl-c), something like:
if frame == self.sframes_per_episode  or rospy.is_shutdown():
break

carla_ros_bridge/src/carla_ros_bridge/bridge.py, line 180 at r1 (raw file):

                self.client.send_control(**control)

            self.steer.data = control.steer

Why do you require to do that ?

carla_ros_bridge/src/carla_ros_bridge/bridge.py, line 185 at r1 (raw file):

            # publish all messages
            self.send_msgs()

why moving send_msg ?

carla_ros_bridge/src/carla_ros_bridge/bridge_with_rosbag.py, line 11 at r1 (raw file):

import rospy
import os
from datetime import datetime

please import datetime just after time

carla_ros_bridge/src/carla_ros_bridge/bridge_with_rosbag.py, line 32 at r1 (raw file):

        self.bag.write('steer', self.steer, self.cur_time)
        self.bag.write('brake', self.brake, self.cur_time)

maybee remove that from this pullrequest (that is for episode feature), and maybee propose an other pull request for ego-motion information (in that case I think it's maybee preferable to use a dedicated ros message that contains brake/gas/steer and not 3 differents message, what do you think about that ?

carla_ros_bridge/src/carla_ros_bridge/client.py, line 28 at r1 (raw file):

        for episode in range(0, num_episodes):
            rospy.loginfo("Starting Episode --> {}".format(episode))

add a like like if rospy.is_shutdown() -> break, to be able to cleanly stop after a ctrl-C

Comments from Reviewable

Review status: 0 of 5 files reviewed, 10 unresolved discussions (waiting on @aranga81)

carla_ros_bridge/src/carla_ros_bridge/bridge.py, line 12 at r1 (raw file):
Previously, laurent-george (George Laurent) wrote…
Please sort import : (I am not sure what is the carla guideline but I like to use:
standard library imports
third-party imports
application-specific imports

example:
import random
from itertools import count
import rospy
from std_msgs.msg import Float32, Bool
from carla.settings import CarlaSettings
from carla_ros_bridge.control import InputController
What do you think ?
@nsubiron  what do you recommend ?

Yes, we follow "PEP8" style guide https://www.python.org/dev/peps/pep-0008/?#imports

Comments from Reviewable

@laurent-george @nsubiron
Follow-up changes made in the new commit. Please check !

removed control inputs - steer|brake|throttle from this PR.
import adjustments according to "PEP8"
if frame == self.sframes_per_episode or rospy.is_shutdown(): --> added to bridge.py

Hey @aranga81!
First of all thank you for this PR!
As we use Reviewable, you need to use it to mark as done all the corrections the reviewer made to your code.
After that, the reviewer can agree with all your changes and proceed with the PR.
So... click every red button on Reviewable, this will send you to the next thing you must check/accept :)

Hello - Thank you! marking out the changes in reviewable !

Review status: 0 of 4 files reviewed, 8 unresolved discussions (waiting on @laurent-george and @aranga81)

carla_ros_bridge/config/settings.yaml, line 10 at r1 (raw file):
Previously, laurent-george (George Laurent) wrote…
Maybee add a comment after Framesperepisode, something like:
Framesperepisode: 300  # use -1 to run it indefinitely ? What do you think ?

Done.

carla_ros_bridge/src/carla_ros_bridge/bridge.py, line 12 at r1 (raw file):
Previously, nsubiron (Néstor Subirón) wrote…
Yes, we follow "PEP8" style guide https://www.python.org/dev/peps/pep-0008/?#imports

Please check the changes - also not writing the control inputs to bag so no more std_msgs import.

carla_ros_bridge/src/carla_ros_bridge/bridge.py, line 64 at r1 (raw file):
Previously, laurent-george (George Laurent) wrote…

# control inputs - float std msgs
        self.steer = Float32(0.0)
        self.brake = Float32(0.0)
        self.throttle = Float32(0.0)
        # control inputs - Bool msgs
        self.reverse = Bool(False)
        self.hand_brake = Bool(False)

Not needed, already done using InputController class

Done.

carla_ros_bridge/src/carla_ros_bridge/bridge.py, line 153 at r1 (raw file):
Previously, laurent-george (George Laurent) wrote…
please keep a is_shutdown() (so we can intercept a ctrl-c), something like:
if frame == self.sframes_per_episode  or rospy.is_shutdown():
break

Done.

carla_ros_bridge/src/carla_ros_bridge/bridge_with_rosbag.py, line 11 at r1 (raw file):
Previously, laurent-george (George Laurent) wrote…
please import datetime just after time

Done.

carla_ros_bridge/src/carla_ros_bridge/bridge_with_rosbag.py, line 32 at r1 (raw file):
Previously, laurent-george (George Laurent) wrote…

        self.bag.write('steer', self.steer, self.cur_time)
        self.bag.write('brake', self.brake, self.cur_time)

maybee remove that from this pullrequest (that is for episode feature), and maybee propose an other pull request for ego-motion information (in that case I think it's maybee preferable to use a dedicated ros message that contains brake/gas/steer and not 3 differents message, what do you think about that ?

Removed this part for the PR !

carla_ros_bridge/src/carla_ros_bridge/client.py, line 28 at r1 (raw file):
Previously, laurent-george (George Laurent) wrote…
add a like like if rospy.is_shutdown() -> break, to be able to cleanly stop after a ctrl-C

Done.

.gitignore, line 32 at r1 (raw file):

_site
core
/.project

removed this from .gitignore !

Comments from Reviewable

Review status: 0 of 4 files reviewed, 3 unresolved discussions (waiting on @laurent-george and @aranga81)

carla_ros_bridge/src/carla_ros_bridge/bridge_with_rosbag.py, line 21 at r2 (raw file):

        fname = '{:%m%d_%H%M}'.format(datetime.now())
        rosbag_fname = os.path.join(rospy.get_param('rosbag_fname'),

after trying it on my computer, I end up with errors,
rosbag_fname is for example /tmp/out.bag
I think the output files should then be:
/tmp/out_episode_0.bag
/tmp/out_episode_1.bag
or  (if we want the date):
/tmp/out_episode_0_{date}.bag
/tmp/out_episode_1_{date}.bag
or (if we want only date):
/tmp/out_episode_{date}.bag
/tmp/out_episode_{date}.bag
What do you think ? (it's just a suggestion)
I think the code to do it could be :
prefix, extension = os.path.splitext(rospy.get_param('rosbag_fname'))
rosbag_fname = os.path.join([prefix, "_{date}".format(cur_date)])
but maybee it's overcomplicated, and just modifying the documentation/renaming parameter from rosbag_fname to rosbag_directory_path  could do it.
What do you think ?

carla_ros_bridge/src/carla_ros_bridge/client.py, line 28 at r1 (raw file):
Previously, aranga81 (Adithya Ranga) wrote…
Done.

the rospy.is_shutdown seems to still be missing..
maybe something like:
if rospy.is_shutdown():
break  (just after the for)

Comments from Reviewable

Review status: 0 of 5 files reviewed, 3 unresolved discussions (waiting on @laurent-george)

carla_ros_bridge/src/carla_ros_bridge/bridge_with_rosbag.py, line 21 at r2 (raw file):
Previously, laurent-george (George Laurent) wrote…
after trying it on my computer, I end up with errors,
rosbag_fname is for example /tmp/out.bag
I think the output files should then be:
/tmp/out_episode_0.bag
/tmp/out_episode_1.bag
or  (if we want the date):
/tmp/out_episode_0_{date}.bag
/tmp/out_episode_1_{date}.bag
or (if we want only date):
/tmp/out_episode_{date}.bag
/tmp/out_episode_{date}.bag
What do you think ? (it's just a suggestion)
I think the code to do it could be :
prefix, extension = os.path.splitext(rospy.get_param('rosbag_fname'))
rosbag_fname = os.path.join([prefix, "_{date}".format(cur_date)])
but maybee it's overcomplicated, and just modifying the documentation/renaming parameter from rosbag_fname to rosbag_directory_path  could do it.
What do you think ?

Done.

carla_ros_bridge/src/carla_ros_bridge/client.py, line 28 at r1 (raw file):
Previously, laurent-george (George Laurent) wrote…
the rospy.is_shutdown seems to still be missing..
maybe something like:
if rospy.is_shutdown():
break  (just after the for)

Done.

Comments from Reviewable

Reviewed 3 of 4 files at r2, 3 of 3 files at r3.
Review status: all files reviewed, 2 unresolved discussions (waiting on @laurent-george)

Comments from Reviewable

Ok, Done, LGTM.

Review status: all files reviewed, 2 unresolved discussions (waiting on @laurent-george)

Comments from Reviewable

Review status: all files reviewed, 2 unresolved discussions (waiting on @laurent-george)

Comments from Reviewable

Review status: all files reviewed, 1 unresolved discussion (waiting on @aranga81)

.gitignore, line 32 at r1 (raw file):
Previously, aranga81 (Adithya Ranga) wrote…
removed this from .gitignore !

ok

Comments from Reviewable

Review status: all files reviewed, 1 unresolved discussion (waiting on @aranga81)

.gitignore, line 32 at r1 (raw file):
Previously, laurent-george (George Laurent) wrote…
ok

ok

Comments from Reviewable

Reviewed 1 of 5 files at r1.
Review status: all files reviewed, 1 unresolved discussion (waiting on @aranga81)

Comments from Reviewable

Cool :)


chore: use #adaptation_note for labelling adaptation notes

[ ] depends on: #12662

Thanks! Please wait for the upstream PR before merging.
bors d+

This currently fails the "find #-commands" step.
@adomani As the author of #10809, do you happen to have some spare time to help?
Do you know what needs to be done so #help also mentions #adaptation_note, or that one is allowed? Thank you!

(Of course, when #11019 lands, such an exception can also be made in the Lean version.)

Michael, I did not realize that you posted this here as well.  #12675 allows adaptation notes.  I'm not sure that I understand your question about #help: it should pick up adaptation notes on its own, I think.

Sorry for the double-post; I realised later that #12662 exposed this already.
Given there's a fix for the linter, whatever question I had is resolved: essentially I was asking how to fix this.

bors r+

bors r+


add extraEnv, command, extraVolumeMounts, extraVolumes, serviceAccount

To adapt config

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


Getting "index out of range" error after adding a new function.

OS: Amazon AMI (Linux)
Apex version: 0.10.2
I created a project, deployed, and invoked: worked.
I added a new folder under "functions" called "goodbye". In this folder, I put the following function.json:
{
  "description": "Say goodbye",
  "runtime": "python",
  "handler": "handle",
  "memory": 128,
  "timeout": 5,
  "region": "aws-east-1",
  "role": "arn:aws:iam::NUMBER:role/Echo_lambda_function"
}

I copied the role from "project.json" into the "function.json" just to see if it would help. It did not. (I was grasping.)
I also included "index.py", which was also (at various points) named "main.py" and "funs.py".
def handle (event, context):
    return {"RESULT" : "GOODBYE"}

Then, I tried to run "apex deploy", and received the following. My best guess has to do with notions of "LATEST" and rollback, but...
This dumps out as follows:
[ec2-user@ip-something MICAEcho]$ apex deploy
panic: runtime error: index out of range

goroutine 9 [running]:
panic(0xb540e0, 0xc82000e070)
	/usr/local/go/src/runtime/panic.go:481 +0x3e6
github.com/apex/apex/plugins/python.(*Plugin).Build(0x10a0948, 0xc82006b340, 0xc820141aa0, 0x0, 0x0)
	/Users/tj/dev/src/github.com/apex/apex/plugins/python/python.go:68 +0x4aa
github.com/apex/apex/function.(*Function).hookBuild(0xc82006b340, 0xc820141aa0, 0x0, 0x0)
	/Users/tj/dev/src/github.com/apex/apex/function/function.go:723 +0x184
github.com/apex/apex/function.(*Function).Build(0xc82006b340, 0x0, 0x0, 0x0, 0x0)
	/Users/tj/dev/src/github.com/apex/apex/function/function.go:530 +0x133
github.com/apex/apex/function.(*Function).BuildBytes(0xc82006b340, 0x0, 0x0, 0x0, 0x0, 0x0)
	/Users/tj/dev/src/github.com/apex/apex/function/function.go:509 +0x5c
github.com/apex/apex/function.(*Function).Deploy(0xc82006b340, 0x0, 0x0)
	/Users/tj/dev/src/github.com/apex/apex/function/function.go:183 +0x8b
github.com/apex/apex/project.(*Project).Deploy.func1.1(0xc82004afc0, 0xc82006b340, 0xc82004b020)
	/Users/tj/dev/src/github.com/apex/apex/project/project.go:198 +0x71
created by github.com/apex/apex/project.(*Project).Deploy.func1
	/Users/tj/dev/src/github.com/apex/apex/project/project.go:204 +0xd0

When run with debug:
[ec2-user@ip-something MICAEcho]$ apex -ldebug deploy
   • loading functions in functions
   • loading function in functions/goodbye
   • loading function in functions/hello
   • inferring runtime         function=hello
   • inferred runtime          function=hello runtime=nodejs4.3
   • deploying 2 functions
   • deploying                 function=hello
   • creating build            function=hello
   • injecting prelude         function=hello
   • adding env                env=map[APEX_FUNCTION_NAME:hello LAMBDA_FUNCTION_NAME:Echo_hello] function=hello
   • deploying                 function=goodbye
   • creating build            function=goodbye
   • injecting prelude         function=goodbye
panic: runtime error: index out of range

and then everything as above.
I'm unsure what other information I can provide to assist. It seems to have to do with having added another function, but... perhaps I did that incorrectly? I'm not explicitly trying to create a multi-language deploy (if that is an issue), but instead was just trying to create a Python handler to see if it would "just work."
Thoughts? Anything else I can do?

Hmm so this happens when you have index.py or did it happen at all times? If possible maybe a zip of the project for reproducing would be helpful

nvm I see what's breaking there, you're missing a . in the "handler", Lambda requires the file on the left such as "main.myhandler" or "index.myhandler". Either way this should not explode like this so I'll mark it as a bug, thanks for the report!


doesn't work on quilt 1.19.1 (They have the same fabric mappings)

https://mclo.gs/RiSVb2c

Will work on it once I get a chance

thanks!

Any updates on this for 1.19.2?

I don't know I will try to get something out soon


healthcheck: Don't update tablet record if it's been taken over.

@alainjobart
If the machine a tablet is on loses contact with the cluster, a human or
automated cluster manager may launch a replacement tablet on another
machine. If the original tablet later regains contact, we need to
prevent its healthcheck from modifying the tablet record, which is now
owned by a new instance.
To do this, we rely on the fact that each tablet will set its IP and
primary port in topology on startup. The IP:port should never change for
the life of a process, and any new process that runs simultaneously with
the old one should always have a different IP:port tuple.
Thus, we say that whichever tablet has its IP:port in the tablet record
is the true owner of that record. The healthcheck of any other tablet is
not allowed to modify the record. Note that this check for ownership
applies ONLY to the healthcheck (which includes going SPARE on
shutdown). All other updates to tablet records are unaffected.

LGTM thanks for fixing this!


Withmultipart_formdata is not accepting json payload

Describe the bug
I am trying to make a post call with accept multipart form data, and one of its parameters (this one is mandatory) is only accepting JSON payload. But the spec handler is unable to identify the JSON data.
To Reproduce
Steps to reproduce the behavior:
My spec handler :

My JSON payload which contains some synthetic data produced through function,

Now while running I am getting the below error,

Same thing from the browser

Expected behavior
It should add the details.
Software (please complete the following information):

OS: [Windows]
NodeJS Version [ 14]
Test Runner [e.g mocha]

Any clue what I am missing here ?

Hello @JyotiPMallick , is the RegisterCompany is a data template?
If so, we need to use<EMAIL_ADDRESS>For example:
spec.withMultiPartFormData({ '@DATA:TEMPLATE@': 'RegisterCompany' })

You mean something like spec.withMultiPartFormData({ companyDto: {"@DATA:TEMPLATE@": "RegisterCompany" }}); ?

addSpecHandler("Register a new company", ({ spec }) => {
spec.post(paths.COMPANY_REGISTRATION);
spec.withMultiPartFormData({ companyDto: {"@DATA:TEMPLATE@": "RegisterCompany" }});
spec.expectStatus(200);
});
I am getting TypeError: source.on is not a function error.

Can you please share the stack trace of the error.

  Registering a new company should return expected http status code 200 proper data in the response time.:
     TypeError: source.on is not a function
      at DelayedStream.create (node_modules\delayed-stream\lib\delayed_stream.js:33:10)
      at CombinedStream.append (node_modules\combined-stream\lib\combined_stream.js:45:37)
      at FormData.append (node_modules\form-data-lite\src\index.js:75:3)
      at setMultiPartFormData (node_modules\pactum\src\helpers\requestProcessor.js:134:34)
      at Object.process (node_modules\pactum\src\helpers\requestProcessor.js:22:5)
      at Tosser.toss (node_modules\pactum\src\models\Tosser.js:32:39)
      at Spec.toss (node_modules\pactum\src\models\Spec.js:540:19)
      at Spec.then (node_modules\pactum\src\models\Spec.js:544:10)

Here it is

I’m not sure whether this issue is related to Pactum, the underlying library, or a misunderstanding in the usage.


client-sdk: use tinygo to compile to wasm

@sekulicd the problem is: ark-sdk.wasm is >35MB in size:

We host the clients on Cloudflare's Pages
Cloudflare's Pages does not allow files >25MB in size
This means we need to host the wasm file in a different service
Which is a pain when developing with quick iterations

A different approach would be to build the wasm into different files:

7 files with 5MB each is ok, one with 35MB is not
I think is possible to divide the go code into into modules and then generate different wasm files

I would give TinyGo a chance, looking into possible optimizations https://tinygo.org/docs/guides/optimizing-binaries/
Other option is also to use compression when compiling and then decompressing in the browser
https://github.com/httptoolkit/brotli-wasm
https://pkg.go.dev/github.com/google/brotli

@tiero @bordalix update on this: TinyGo doesnt support native net/http pkg, there is ported https://github.com/tinygo-org/net pkg but replacing standard pkgs with TinyGo doesnt seem nice option?
Tried with compressing but didnt make it work yet, will try more.


Image load-in bug

Fix the way get_caffe_features.py loads in images (i.e. change to one-at-a-time load from csv).

Now reading in one line at a time via Python's csv package.


API docs for 3.0 and previous releases

@bricelam - I have no access in this repo :(

Me either. @Pilchie?

I've added @aspnet/aspnet-docs-push and @aspnet/aspnet-push to that repo.


Put in a Feedback loop

As people interact with trinket put in an automatic analysis tool to log what is being used and what is not.

So this is the stream app that is currently in minimum-entropy -- if we want to include that here.


Panel Version
1.11.
Wings Version
x
Service
Palworld
Modified
No, I did not modify the egg
Expected Behavior
[Pterodactyl Daemon]: Finished pulling Docker container image
steam user is not set.
Using anonymous user.
WARNING: setlocale('en_US.UTF-8') failed, using locale: 'C'. International characters may not work.
Redirecting stderr to '/home/container/Steam/logs/stderr.txt'
Logging directory: '/home/container/Steam/logs'
[  0%] Checking for available updates...
[----] Verifying installation...
UpdateUI: skip show logoSteam Console Client (c) Valve Corporation - version<PHONE_NUMBER>
-- type 'quit' to exit --
Loading Steam API...OK
Connecting anonymously to Steam Public...OK
Waiting for client config...OK
Waiting for user info...OK
Success! App '2394010' already up to date.
:/home/container$ /home/container/Pal/Binaries/Linux/PalServer-Linux-Test Pal EpicApp=PalServer -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publicip=<IP_ADDRESS> -port=25581 -publicport=25581 -servername="${SERVER_NAME}" -players=32 $(if [ -n "$SERVER_PASSWORD" ]; then echo "-serverpassword="${SERVER_PASSWORD}""; fi) -adminpassword="${ADMIN_PASSWORD}"
/entrypoint.sh: line 89: /home/container/Pal/Binaries/Linux/PalServer-Linux-Test: No such file or directory
container@pterodactyl~ Server marked as offline...
[Pterodactyl Daemon]: ---------- Detected server process in a crashed state! ----------
[Pterodactyl Daemon]: Exit code: 127
[Pterodactyl Daemon]: Out of memory: false
[Pterodactyl Daemon]: Aborting automatic restart, last crash occurred less than 60 seconds ago.
Actual Behavior
I have update the egg and i restart the server. I get the error Out of memory: false.
The memory on the server is more than 80gb so there is no out of memory problem.
Steps To Reproduce
I have install the server again still the same probleem.
Install logs
x

Your egg or / and startup is out of date. Also read this egg readme.

Hi Quinten,
I have update the egg and the startup and i read the egg but still i get the out of memory: False.
I use this file.
egg-palworld1.json

I have restart the server and the server was updating but still the same code.
reinstall the server and still not working.


Break build and release steps up to enable testing (CLD-2585)

In order to enable automatic releases, we need testing.  One test case is "does it build".  Break up the build and release steps into separate jobs, only running release on commit to main while running build on all PRs.

This was generally handled in #101


Patch: TypeScript bindings and fallback to View for non-iOS platforms

Hi! 👋
Firstly, thanks for your work on this project! 🙂
Today I used patch-package to patch<EMAIL_ADDRESS>for the project I'm working on.

Here is the diff for adding TypeScript bindings and fallback to <View> for non-iOS-platforms:
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>new file mode 100644
index 0000000..154d755
--- /dev/null
+++<EMAIL_ADDRESS>@@ -0,0 +1,5 @@
+import { requireNativeComponent } from 'react-native';
+
+const PointerInteractionViewIOS = requireNativeComponent('PointerInteraction');
+
+export { PointerInteractionViewIOS as PointerInteractionView }
\ No newline at end of file
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>new file mode 100644
index 0000000..3e2cfaf
--- /dev/null
+++<EMAIL_ADDRESS>@@ -0,0 +1,3 @@
+import { View } from 'react-native';
+
+export { View as PointerInteractionView }
\ No newline at end of file
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>new file mode 100644
index 0000000..c4e046f
--- /dev/null
+++<EMAIL_ADDRESS>@@ -0,0 +1,17 @@
+import type React from 'react';
+import { ViewProps } from 'react-native';
+
+type PointerInteractionViewIOSProps = {
+    pointerMode?: 'automatic' | 'lift' | 'highlight' | 'hover' | 'verticalBeam' | 'horizontalBeam',
+    beamLength?: number,
+} & ViewProps
+
+
+
+/*declare module '@thefunbots/react-native-pointer-interactions' {
+
+}*/
+
+export const PointerInteractionView: React.FC<PointerInteractionViewIOSProps>;
+
+// export const PointerInteractionView = React.FC<PointerInteractionViewIOSProps>
\ No newline at end of file
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index 154d755..cd2729c 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -1,5 +1,3 @@
-import { requireNativeComponent } from 'react-native';
+import { PointerInteractionView } from "@thefunbots/react-native-pointer-interactions/PointerInteractionView";

-const PointerInteractionViewIOS = requireNativeComponent('PointerInteraction');
-
-export { PointerInteractionViewIOS as PointerInteractionView }
\ No newline at end of file
+export { PointerInteractionView };
\ No newline at end of file

This issue body was partially generated by patch-package.

Added to the v1.0.0 release, thank you :D


Authentification non valide with Cozytouch

Did you read the instructions?

[X] I have read the README, including the advanced debugging section.

The problem
After an update from Thermor, Atlantic, Sauter on Cozytouch, the authentification does not work for new user.
I have the help service at phone, and he said to me: "We migrated accounts from one database to another and improved connection security"
What version of this integration (ha-tahoma) has the issue?
Home Assistant 2022.11.5
What version of Home Assistant Core has the issue?
Supervisor 2022.11.2
Which gateway / hub do you use?
Cozytouch
Device model
No response
Home Assistant log
Logs
Copy/paste any log here, between the starting and ending backticks. The first log line must start with "Added device (Device...".

Additional information
No response

We have already migrated to this new authentication server in Overkiz in core. Please upgrade to 2022.12 (public beta) or wait for the release of 2022.12.
This ha-tahoma integration is currently less maintained since we are working on migrating all the bits to core.


[FLINK-33929][jdbc-connector] Support JDBC String field read Fragment read

https://issues.apache.org/jira/browse/FLINK-33929?filter=-2

PTAL: @MartijnVisser thanks !

@zhilinli123 I still don't understand the Jira ticket, so I can't really review it. Perhaps @snuyanzin or @eskabetxe understand the goal of this PR.

@zhilinli123 I still don't understand the Jira ticket, so I can't really review it. Perhaps @snuyanzin or @eskabetxe understand the goal of this PR.

hi~ @MartijnVisser  The current jdbc slicing support type is limited, currently does not support for string type fields for slicing read, many table design using UUID as the table key without self-increment primary key, resulting in the use of flink reading is no way to slice read, the current function is to support the current shortage

@zhilinli123 I still don't understand the Jira ticket, so I can't really review it. Perhaps @snuyanzin or @eskabetxe understand the goal of this PR.

For what I can assume, @zhilinli123 are trying to use scan.partition on a table that is hash partitioned by a string field..
My understanding of scan.partition is that only divides the query on multiples query based on params of scan.partition but is not using partitioning of table, it only adds "field BETWEEN ? AND ?" in query, and for that it only allow numeric, date, or timestamp column..

@zhilinli123 I still don't understand the Jira ticket, so I can't really review it. Perhaps @snuyanzin or @eskabetxe understand the goal of this PR.

For what I can assume, @zhilinli123 are trying to use scan.partition on a table that is hash partitioned by a string field..
My understanding of scan.partition is that only divides the query on multiples query based on params of scan.partition but is not using partitioning of table, it only adds "field BETWEEN ? AND ?" in query, and for that it only allow numeric, date, or timestamp column..

You're right, but slicing string hash md5 doesn't need to be done BETWEEN? AND ?  It's much more efficient to check this shard directly

PTALA: @libenchao  hi, could you please help review this function? I would like to express my heartfelt thanks

PTAL:@eskabetxe @leonardBang @snuyanzin If you have time, could you review it for me? Express gratitude

If you have time, could you review it for me? Express gratitude @MartijnVisser @eskabetxe


Add Amusement Parks index page and details page

in this pr, I added an index page and details page for amusement parks, and added the index page to the nav bar.
-created as a draft pull request because the pages' dependencies aren't yet implemented

made a mistake when copying over code for index page. closing pull request.


Missing device types

Add devices you want to see added to this thread. If you post the json for the device (that should be added to devicetypes.json) I'll add it to a future revision of the package.
To determine the device type go to http:///rest/nodes in chrome and look at the resulting XML and look for your device. It will look like this:
<node flag="128">
<address>ZW002_1</address>
<name>Front Door Lock</name>
<family>4</family>
<parent type="3">9191</parent>
<type><IP_ADDRESS></type>
<enabled>true</enabled>
<deviceClass>0</deviceClass>
<wattage>0</wattage>
<dcPeriod>0</dcPeriod>
<pnode>ZW002_1</pnode>
<sgid>1</sgid>
<devtype>
<gen>4.64.3</gen>
<mfg>297.46443.65018</mfg>
<cat>111</cat>
<model>5</model>
</devtype>
<property id="ST" value="100" formatted="Locked" uom="11"/>
</node>

Look for the type node. That will be the device type.
Or do a pull request with the change.

Example:
Please add they GE Z-wave Jasco on/off switches.
Entry:
{ "type": "<IP_ADDRESS>", "address": "", "name": "On/Off Power Switch", "deviceType": "Light", "connectionType": "ZWave", "batteryOperated": false }

I fully understand I may be naive, but after a cursory reading of http://www.insteon.com/pdf/insteon_devcats_and_product_keys_20081008.pdf it seems to me there could be a default IsyDevice for at least device categories 01 and 02 (dimmable and switched devices respectively) that would eliminate a lot of missed device types for a lot of people. In my network of perhaps 20 devices only two were in the current isydevicelist.js.

Not naive at all and a good point. I'll add generic devices as you suggest using that doc. Good find.
In the meantime if you have specific device types you'd like to see added feel free to post them here or out in a pull request.

This appears to be a new/missing type code for Insteon Motion Sensors:
{ "type": "<IP_ADDRESS>", "address": "1", "name": "(2842-222) Insteon Motion Sensor", "deviceType": "MotionSensor", "connectionType": "Insteon Wireless", "batteryOperated": true }

All requested types were added. With new generic support dropping this issue.
If someone detects a specific device class is not picked up then will open issues against the generic device identification code. Going to go away from the .json file mapping names.


Adding incremental training support

Would be great if model can incremental train  by using previous saved model

@jvence Incremental training added.
Please, pull the latest.
Example:
python train_joint_bert.py --train=data/snips/train --val=data/snips/valid --save=saved_models/joint_albert_model2 --epochs=5 --batch=64 --type=albert --model=saved_models/joint_albert_model


New FAQ request

Please add a question:
Can I assign a Custom Role to a Group?
Answer:
No, only Built-in Roles are allowed.

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

ID: 6e34556d-8bf3-7e01-1906-a455dfd93d6f
Version Independent ID: b9c0bfea-3aaa-b91e-0acc-15f27dfa3127
Content: Troubleshooting roles assigned to cloud group FAQ - Azure Active Directory
Content Source: articles/active-directory/roles/groups-faq-troubleshooting.md
Service: active-directory
Sub-service: roles
GitHub Login: @rolyon
Microsoft Alias: rolyon

@brsteel
Thanks for your feedback! We will investigate and update as appropriate.

I made a pull request to add:

Q: Can I assign a custom role directly to an Azure AD Security Group?
A: No. You can only assign built-in roles to Azure AD Security Groups.

Per discussion with @brsteel, it is only supported to assign a built-in role directly to an Azure AD Security Group. Assigning a custom role would require assigning the role to each member of the group individually (either by using a foreach loop with Azure AD Powershell or through manual assignment).
https://github.com/MicrosoftDocs/azure-docs-pr/pull/151490
@rolyon and @brsteel please review


Fixed a bug regarding companion gestalts

Okay, in theory, this bug would only pop up if you were respeccing (respecing?) a companion. The issue with the old code was that cl.Level would just be whatever the character's level was at the time of respec, so if the character was level 20, you couldn't gestalt at all if you used their default class.
What this code does is just skip the predefined levels, which should be defined in the ClassLevelLimit blueprint. In my testing, this fixed the bug for Lann. I haven't thoroughly tested this, but I don't know what other test cases are prudent here either.

Let’s give this a try this weekend.  Please make an experimental release on discord


can't catch "Can not open..."

Hi,
is there a way to catch "Can not open /dev/...." error ? I put the routine in a try/catch clause but my whole app is still crashing on this which it shouldn't of course.
I am using 2.1.0.
thanks a lot.

thanks a lot, did update to 4.0.1 and now it works as expected.


HMR not updating template comments correctly

Describe the bug
Vite Vue 3 project, dev mode! This issue could be related to vite client (that manages hot updates on the page).
When updating comments in the template section of an .vue SFC, the comments are not correctly HMRed. Only on a page refresh, the updated comments are rendered correctly.
Steps to reproduce:

In the stackblitz reproduction link, in terminal (if not auto-started), npm run dev to serve the vite app. Open App.vue.

We need to inspect the console > elements tab of the rendered app, so in stackblitz, click on "Open in New Window" button which is found on the top right. This will open the app in an external window. In this external window, please open the console > elements tab.

You can see the:

Now, back in the editor, paste the below in the middle of template content:

  <!-- Middle component start -->
  <HelloWorld />
  <!-- Middle component end -->

Check console in the external window. HMR did not update the newly added comments, and has weirdly duplicated the comments from the "bottom" portion elements. Even if you save (cmd+s on editor window), the content stays as it is.

Now, refresh the external window. The updated comments are now rendered correctly.

Now, again, in editor, select the previously pasted code (from step 4 above), delete it.
Check console in the external window. HMR again weirdly removed the comments from the "bottom" portion and not the "middle" portion that we just deleted from the template.

To summarise, continuous HMR messes up the comments in the rendered app. I couldn't speculate as to why this is happening.

Some additional observations (Webpack):

I tested the above with Vue-cli-5.0.0-rc.2 based Vue-3 project. Comments were perfectly HMRed. No mess up.
I tested the above with Vue-cli-4 based Vue-2 project (template tag should open as <template comments>). Comments were perfectly HMRed. No mess up.

Comments in templates are quite critical during development and the above is a very very simplistic reproduction. Comments are quite often used during troubleshooting complex apps eg:https://github.com/vuejs/vue/issues/6150 (searching the rendered app's console > elements tab), and has great capability to be leveraged in external tooling integrations (I'm working on one).
I believe this is an HMR issue, but if it's in fact vue-core issue, please let me know, I can log it there.
Please kindly look into this. Vite is super fast, and would love to see HMR perfected :-) Thanks a lot for the magic.
Reproduction
https://stackblitz.com/edit/vitejs-vite-mwwa3m?file=src/App.vue
System Info
System:
    OS: macOS 11.5.2
    CPU: (4) x64 Intel(R) Core(TM) i5-7267U CPU @ 3.10GHz
    Memory: 508.45 MB / 8.00 GB
    Shell: 3.2.57 - /bin/bash
  Binaries:
    Node: 16.7.0 - /usr/local/bin/node
    Yarn: 1.22.17 - /usr/local/bin/yarn
    npm: 7.20.3 - /usr/local/bin/npm
  Browsers:
    Brave Browser: <IP_ADDRESS>
    Chrome: 97.0.4692.99
    Chrome Canary: 100.0.4865.0
    Edge: 90.0.818.46
    Firefox: 69.0.1
    Safari: 14.1.2

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

https://github.com/vuejs/core/issues/5357

Closing as it's already been tracked in the upstream.


How to set initial state?

I can't set html as value of editor, and I can't set delta generated by html. So what can I do to set value of editor from some existing html/delta? Thank you

This works.
this.editorRef.setEditorContents(this.editorRef.getEditor(), '
test
');

Hi. In componentDidMount the ref is null. Is this right behaviour?


gdb 跟其它orm一样用的reflect实现的吗？

1. What version of Go and system type/arch are you using?

2. What version of GoFrame are you using?

3. Can this issue be reproduced with the latest release?
4. What did you do?

5. What did you expect to see?
6. What did you see instead?

是用的reflect实现的吗？

@freboat 是的


Unloading chunks near rope pulley bugs lighting

I have an elevator in my base on a server I host, and whenever the chunk with the elevator is unloaded, an almost 110-15 block radius from the rope pulley has all light removed. This area has the biggest torch spam in my history of playing Minecraft ever, and every time the elevator is unloaded, mobs start spawning due to a lack of light in that area. I don't know if this happens with any other create block, but I have not had this happen with other create blocks.

I could have sworn there were more torches, just looking at my statistics... funny thing is I'm not even close to mob-proofing the full area around the base.
If you wanna message me, do so on Discord: FoxMaster198#5119
Also, I would absolutely LOVE to talk with one of the create mod devs and learn a bit about how they created this. Currently starting my career as a Software Developer and anything Code get me excited, especially if it has something to do with Minecraft. Thank you for making this awesome mod!
P.S. Potato Launcher + Chorus Fruit = OP

Do you have redstone links there? Likely duplicate of #318

I'm using redstone links in other contraptions, but they don't have the same effect on lighting on my server

Same with me
https://github.com/Fabricators-of-Create/Create/issues/392

Same with me #392

I change and Phospor to Starlight and all fixed idk if it is actually the fix or not.

I haven't seen any other cases of this, it might've been an incompatibility of some kind. Closing, let's hope it doesn't come back.


[AutoComplete] UX requests for AutoComplete tool

Type of Issue
Select the type of issue:

[ ] Bug report (to report a bug)
[ ] Feature request (to request an additional feature)
[x] Tracker (I am just using this as a tracker)
[ ] Refactor request
[ ] Documentation Ask

Checklist
Use this checklist if you are using this issue as a tracker:

[x] I think it'd be great if Action dict text box could be resizable (especially for bigger dictionaries)
[ ] Once I reach the end of annotations, it says "congrats" but still keeps showing the last text I annotated with empty dict which confuses me whether I should that empty dict for the same command ? Is it possible to just wipe out the text  box + action dict (not even show {} , just empty it) when we reach end of annotations ?
[x] README: instructions on what to do after save - probably point at running the upload to s3 script ? Should we just upload as is or rename the files ?
[x] I double checked but the annotations I wrote (for commands coming from annotated.txt) do not get substituted in place in file annotated.txt but I see the changes in autocomplete_timestamp.txt file
[x]  Allow "OTHER" sub dictionaries for situations where a sub-logical form is not possible with our current grammar, but could be clearly isolated in the logical form
[ ]  proper re-focusing/re-centering cursor after [enter] jsonification

Once I reach the end of annotations, it says "congrats" but still keeps showing the last text I annotated with empty dict which confuses me whether I should that empty dict for the same command ? Is it possible to just wipe out the text box + action dict (not even show {} , just empty it) when we reach end of annotations ?

like everything is empty?

proper re-focusing/re-centering cursor after [enter] jsonification
@aszlam do you mean you can't use "enter" to go to the next line? What do you think about using a different key eg. tab to do the autocomplete/JSON conversions?


Support non-square matrices in JSS generator

Closed by https://github.com/dwavesystems/dwave-optimization/pull/42


Better explanation of how plugins work

Hi, I wanted to try and use a plugin to "skip" certain elements.  Specifically, elements that might later on be changed by server-side rendered code.
For example, I use ejs in Express so my error page has an element <%= error %> that I want to ignore during minimize.  I have the following plugin:
  plugins: [{
      id: 'ejs',
      element: function element(node, next) {
        if (node.name === '%=') {
          // Ignore further processing
        }
        next();
      }
    }]

That can detect the elements, but there doesn't seem to be a way to say "skip ahead and don't process these"

Totally agree on the documentation part, will improve on that this weekend.
The issue your describing is more related to the inner workings of the htmlparser2 though. It minifies HTML, not HTML templates. The problem is that htmlparser2 will see the <> of ejs as an element, while it actually is not.  Basically you want minimize to parse your compiled templates, e.g. the output <%= error %>.
As far skipping, you should be able to simply call the next callback, e.g. if (node.name === '%=') next();. While traversing the DOM each element is simply handed of to your plugins as this allows maximum flexibility.

While the next(); callback will avoid processing it further in the plugin, the end result is still an output of:
Goes in:
<%= error %>

Comes out:
<%= error="" %=""></%=>

This is beyond plugin scope. The dependency htmlparser2 will parse the HTML template and parses the <%= error %> . As you can see in your output the last % is parsed to %="" (e.g. sparse attribute), as if it would be an HTML element which it is clearly not. Minimize should simply be called after the templates are rendered. This is even more optimal as it will also minify the generated/inserted HTML.
Closing this issue for now, allowing plugins to do something that is beyond the scope of this module does not make a lot of sense


enableOnClickOutside() doesn't enable the component if disableOnClickOutside={true} is passed to component

When disableOnClickOutside={true} is set on a component and enableOnClickOutside() is subsequently called within that component to active listening to outside clicks, the internal prop disableOnClickOutside is never set to false.  It just exits out because it is already an enabled instance.
    enableOnClickOutside = () => {
      if (typeof document === 'undefined' || enabledInstances[this._uid]) {
        return;
      }

Because of this, the component's handleClickOutside will never be called as the event handler returns out before it gets there.
      handlersMap[this._uid] = event => {
        if (this.props.disableOnClickOutside) return;

My best guess as to a fix for this would be to remove the above check and use this.props.disableOnClickOutside to prevent the event from ever being registered on the component when it mounts instead.  I could throw together a PR for this if you'd like.

If you pass disableOnClickOutside prop the component is treated as controlled in this regard and calling enableOnClickOutside method wont change that as the prop stays the same, instead of just calling enableOnClickOutside you should change the state of the outer component and pass disableOnClickOutside={false}

Ah, ok.  We are upgrading to the latest version so this must be functionality that changed along the way.  We used to be able to pass in disableOnClickOutside={false} to initially disable the component then call enableOnClickOutside() to enable it.  I'll have to find a workaround.  Thank you!

I think the only way to make this work now is to control passed disableOnClickOutside prop, there is no clean way to call disableOnClickOutside method 🤔 Your use case seems completely valid, I plan to rewrite core parts soon - in fact i've already started https://github.com/Pomax/react-onclickoutside/pull/246 . Need to consider your use case while rewriting. Thanks for creating the issue.


Show subteam completion score on team view

Group completion_score is average of completion_score of all people in group.
 Enables us to compare teams completeness. This is to encourage team members to complete their profile, and hence increase the team completion score.
If there are any performance problems after deployment to production, we will add to the backlog a ticket to periodically cache team completion score results.

I'm thinking that maybe we should only display this from a certain level of team? Mainly for performance reasons, but also it may not have that much value as it would hardly reach 100%.
For example the homepage is essentially the MoJ team view, which would every time loop through all people and render the score. I think that may not work. What do you think?

Inititally Jack does want to see the score on all team levels. We have added another ticket to the backlog for this week to periodically pop scores in the Rails cache, to mitigate any performance issues.

Caching of each group completion score has been added. Cache expires in 1 hour.


Add feature to validate and preview events

Closes #5457
Changes proposed
Modified Playground.js to allow for event validation
Added EventPreview.js file

Check List (Check all the applicable boxes)

[X] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[ ] All new and existing tests passed.
[X] This PR does not contain plagiarized content.
[X] The title of my pull request is a short description of the requested changes.

Screenshots

Note to reviewers

Thank you for your contribution 👍  but this issue #5457 is not assigned to you, so I will close this Pull Request
PR by the assignee is here https://github.com/EddieHubCommunity/LinkFree/pull/5865
Please read the contributing guidelines and any questions let us know https://github.com/EddieHubCommunity/LinkFree/blob/main/CONTRIBUTING.md

Thank you for your contribution 👍 but this issue #5457 is not assigned to you, so I will close this Pull Request
PR by the assignee is here #5865
Please read the contributing guidelines and any questions let us know https://github.com/EddieHubCommunity/LinkFree/blob/main/CONTRIBUTING.md

Hi Victoria (vibronst) is my project partner and she left a comment on her PR that my PR would be the one we both worked on and to close her PR as there were some errors on hers.

Hi Victoria (vibronst) is my project partner and she left a comment on her PR that my PR would be the one we both worked on and to close her PR as there were some errors on hers.

oh I see, thank you for clarifying. Great to see people collaborating on an issue and pull request. But please in future have the issue assigned to you both and both work on the same pull request not separate as this causes confusion.

Please comment on this issue https://github.com/EddieHubCommunity/LinkFree/issues/5457 so I can also assign it to you, this will help reduce the confusion

@KaveriRai please comment on this issue #5457 so I can also assign it to you, this will help reduce the confusion

Just did thank you

When the preview modal appears, the scroll still works on the page behind it instead of the modal. This does not affect larger screen sizes but on mobile it makes it so you cannot see the full preview.

We noticed that this is not only an issue in Events Preview but seems to be a pre-existing bug even in the Profile Preview as in the mobile view the overlay does not scroll but the body does

We noticed that this is not only an issue in Events Preview but seems to be a pre-existing bug even in the Profile Preview as in the mobile view the overlay does not scroll but the body does

Oh interesting! Perhaps better addressed in a separate issue? Wdyt @eddiejaoude

We noticed that this is not only an issue in Events Preview but seems to be a pre-existing bug even in the Profile Preview as in the mobile view the overlay does not scroll but the body does

Oh interesting! Perhaps better addressed in a separate issue? Wdyt @eddiejaoude

Would our code be good to be merged since that issue seems to be a separate one?

We noticed that this is not only an issue in Events Preview but seems to be a pre-existing bug even in the Profile Preview as in the mobile view the overlay does not scroll but the body does

Oh interesting! Perhaps better addressed in a separate issue? Wdyt @eddiejaoude

Good spot @amandamartin-dev 👍  yes I think it can be done separately as this PR would add value by itself
I will try to review now

Hello @vibronst and @KaveriRai it has been a few weeks. Are you able to address the comments and merge conflicts in this PR? How are things?

Thank you for contributing, but as there has been no activity in a long time even after maintainers feedback and support, I am going to close this pull request


[Python install] ld: library not found for -latomic

What version of gRPC and what language are you using?
gRPC 1.27.2, Python
What operating system (Linux, Windows,...) and version?
macOS 10.15.3
What runtime / compiler are you using (e.g. python version or version of gcc)
Python 3.7.6, Clang 11.0.3
What did you do?
Building from source, using python setup.py build && python setup.py install with the following environment variables:
GRPC_PYTHON_BUILD_WITH_CYTHON=True
GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=True
GRPC_PYTHON_BUILD_SYSTEM_ZLIB=True
GRPC_PYTHON_BUILD_SYSTEM_CARES=True

What did you expect to see?
A successful build.
What did you see instead?
ld: library not found for -latomic
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Anything else we should know about your project / environment?
I'm actually using the Spack package manager to build gRPC from source. Here are the relevant logs:

spack-build-out.txt
spack-build-env.txt

I believe this issue is related to #20414, so @veblush may be able to help. Either check_linker_need_libatomic behaves incorrectly, or maybe I just need to build libatomic myself.

Looking further at the code, I think I just need to install libatomic on my system:
$ cat test.cxx
#include <atomic>
int main() { return std::atomic<int64_t>{}; }
$ clang -x c++ -std=c++11 test.cxx
Undefined symbols for architecture x86_64:
  "std::terminate()", referenced from:
      ___clang_call_terminate in test-1858b3.o
  "___cxa_begin_catch", referenced from:
      ___clang_call_terminate in test-1858b3.o
  "___gxx_personality_v0", referenced from:
      std::__1::__atomic_base<long long, false>::load(std::__1::memory_order) const in test-1858b3.o
      Dwarf Exception Unwind Info (__eh_frame) in test-1858b3.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
$ clang -x c++ -std=c++11 -latomic test.cxx
ld: library not found for -latomic
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Okay, digging deeper, one does not simply install libatomic. I would either have to install LLVM or GCC from scratch to get libatomic. If I remove the -latomic flag, the build seems to succeed, so I think the issue is with check_linker_need_libatomic.

@veblush can you take a look at this?

@adamjstewart Sorry for the late answer! It looks very weird to me because clang or gcc on macos or linux are supposed to build the test source without -latomic. This options is mainly for ARM Linux where atomic library is not included in C++ standard library.

@veblush sounds like a possible bug in check_linker_need_libatomic? Let me know if you want me to test any hacks to debug this.

I'm seeing the same with a simple pip install grcpio on Python 3.9.0b3 (but it doesn't look like it's related to the Python version).
I tried to compile the test program used by check_linker_need_libatomic manually and this is what I get:
$ cat test.cpp | cc -x c++ -std=c++11 -                                                                                (master) (tienda-3.8.2)
Undefined symbols for architecture x86_64:
  "std::terminate()", referenced from:
      ___clang_call_terminate in --dd656e.o
  "___cxa_begin_catch", referenced from:
      ___clang_call_terminate in --dd656e.o
  "___gxx_personality_v0", referenced from:
      std::__1::__atomic_base<long long, false>::load(std::__1::memory_order) const in --dd656e.o
      Dwarf Exception Unwind Info (__eh_frame) in --dd656e.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Based on random searching I found https://github.com/pybind/pybind11/issues/382 and the solution suggested there seems to work

Adding -lc++ to the test invocation in check_linker_need_libatomic seems to solve the problem on Catalina 10.15.5.
original error:
$ echo -e "#include <atomic>\nint main() { return std::atomic<int64_t>{}; }" | cc -x c++ -std=c++11 -
Undefined symbols for architecture x86_64:
  "std::terminate()", referenced from:
      ___clang_call_terminate in --905908.o
  "___cxa_begin_catch", referenced from:
      ___clang_call_terminate in --905908.o
  "___gxx_personality_v0", referenced from:
      std::__1::__atomic_base<long long, false>::load(std::__1::memory_order) const in --905908.o
      Dwarf Exception Unwind Info (__eh_frame) in --905908.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

with additional flag:
$ echo -e "#include <atomic>\nint main() { return std::atomic<int64_t>{}; }" | cc -x c++ -std=c++11 -lc++ -
$

That command works on my system:
$ echo -e "#include <atomic>\nint main() { return std::atomic<int64_t>{}; }" | c++ -x c++ -std=c++11 -
$

@tterrace Thanks!


[query] Implement query execution

Once we have a translated SQL query, and we've created a projection pipeline, the only remaining work is to run the query.
The expectation is that the DB/Schema we used to plan the query is still valid; this is ensured by wrapping the query execution itself in a read transaction.
This ticket involves wiring up a database connection, the translated SQL, and the projector, yielding results that are ready to consume or serialize.

This is just about done: q_once works.


ModuleNotFoundError("No module named 'transformers.models.llama'")

System Info
I upgraded from optimum 1.8.5 to 1.9.0 (via dependabot - not that this should be important)

I had not yet upgraded transformers (separate dependabot PR) - so we are still using transformers 4.26.1 (dependabot wants us to upgrade to 4.30.2)

I get this error after the upgrade: `ModuleNotFoundError("No module named 'transformers.models.llama'")`

should the transformers minimum version not be set in your requirements? Or should the module lookup not be conditional / use try-except etc.? I am not using llama and so also shouldn't need `transformers.models.llama`?

Python 3.9.16 (via miniconda)

Who can help?
No response
Information

[ ] The official example scripts
[ ] My own modified scripts

Tasks

[ ] An officially supported task in the examples folder (such as GLUE/SQuAD, ...)
[ ] My own task or dataset (give details below)

Reproduction
this works with optimum 1.8.5 (and transformers 4.26.1) but does not work with optimum 1.9.0 or 1.9.1
it does work with transformers 4.30.2
try:
    from transformers import AutoModel, __version__ as transformers_version
    from optimum.version import __version__ as optimum_version
    from optimum.bettertransformer import BetterTransformer

    print(f"Using optimum {optimum_version} & transformers {transformers_version}")

    kwargs = {  # add any you want
        "num_labels": 10,
    }
    model_name = "roberta-base"
    automodel = AutoModel.from_pretrained(model_name, **kwargs)
    automodel = BetterTransformer.transform(automodel)
    print_str = f"{model_name} converted to BetterTransformer using optimum {optimum_version} & transformers {transformers_version}"
    print(print_str)
except Exception as e:
    model_name = "roberta-base"
    print(f"{model_name} failed to converted to BetterTransformer")
    print(repr(e))

Expected behavior
not to get a ModuleNotFoundError or for the install to have failed for an invalid transformers version

Hi @Alex-ley-scrub ,
llama was implemented in transformers since 4.28.0, which explains the failure when you are using transformers 4.26.1. And the reason why it is not failing for optimum 1.8.5 is due to the fact that optimum's llama support was added since optimum 1.9.0 (through this PR https://github.com/huggingface/optimum/pull/998).
I would suggest you go with latest transformers and optimum. I am also agreed with the fact that you shouldn't be bother when you are not using llama, @fxmarty would it make sense to load llama in a lazy way or add a transformers checker?


Add missing persistent to seboolean

Required to persist after a reboot
Tag: 2.1.2

Looking at https://github.com/search?q=user%3Aopenmicroscopy+seboolean%3A&type=Code&utf8=✓ (which for some reason only shows 4) the others have persistent: yes. LGTM.


markAsBusy / markAsIdle should instantiate idling resources

I am getting annoyed at those methods not knowing about a resource and having to manually call newIdlingResourceWatcher because I am lazy.
Edit: Some type of policy management similar to StrictMode would be cool. We should to this.

Sounds like a good idea. Just remember that any additions to the public API need to be reflected in the no-op version of the library, as well.


ERRAI-1064: Add support for Elemental2 API

This should be merged after these PRs:

https://github.com/kiegroup/droolsjbpm-build-bootstrap/pull/513
https://github.com/AppFormer/uberfire/pull/803
https://github.com/dashbuilder/dashbuilder/pull/359

@tiagobento You should resubmit this PR using the same branch name as the other PRs. That way they will all be built together in the PR builds.

@mbarkley Ok. you can close this one.


[Feature]: Operators can push manifests with buildpack specified

Blockers/Dependencies
No response
Background
As a operator
I want to be able to push manifests with buildpack specified
So that I can use my CF manifests with Korifi
Acceptance Criteria
GIVEN app manifest
applications:
- name: my-app
  buildpack: java

WHEN I cf push -f app.yaml
THEN I see the push succeeding
By not erroring when buildpack is specified we are essentially ignoring the specified buildpack. There is a separate issue #1784 that deals with actually implementing that functionality.
Dev Notes
Korifi API is currently returning the following error when a buildpack is specified in the manifest:
InvalidBuildpacks: Only buildpack auto-detection is supported. Specifying buildpacks is not allowed.

This is annoying when one wants to push existing manifests. Instead of returning an error, we could just issue a warning and carry on with manifest deployment we have as of today

Already implemented, closing


Fix version information for iree-compile

Fixes #13213

I assume it would be for nightly builds, but I'm not sure what you mean for by "in general".  Are you thinking there are additional cases you would want to be handled or would want to not be handled?  @benvanik mentioned there are cases where we want to exclude it for hermeticism sake.  Actually, I should include him on the review too.

I assume it would be for nightly builds, but I'm not sure what you mean for by "in general". Are you thinking there are additional cases you would want to be handled or would want to not be handled? @benvanik mentioned there are cases where we want to exclude it for hermeticism sake. Actually, I should include him on the review too.

Yes, my question is actually just that: is this codepath only triggered on nightly builds. And indeed in local dev, this could invalidate your compilation cache constantly for no reason.

I found the problem on nightly builds, but all that is doing is sourcing these CMake variables from the overall environment: https://github.com/openxla/iree/blob/main/compiler/setup.py#L151 (which the CI sets up with current build info)
If you set those variables yourself and see the version info propagate properly, that should tell us it is working (and will work for releases).

Good to merge @stellaraccident?


Address issues with testing on Windows

This PR comes after #1006 has been merged into master. We knew there would probably be some issues, and lo-and-behold there are. Only issues seem to be with testing using socket.socketpair and incompatibilities with our socketpair helper for Python 2.

I'll note here that continuous-integration/appveyor/py is currently not a required commit status for branch protection. Probably should be added.
While we are at it should also add codecov/project as being required now that the commit status has been used since activating Codecov.
I don't know if you can do this @Lukasa but I think this is something @shazow will also have to do.

@SethMichaelLarson, I noticed while reading this that we lifted some code from https://gist.github.com/geertj/4325783, and noted that it's public domain? I don't anticipate any issues, but do we have a written source on the public domain claim? I don't see a license on that gist.
There's also a backport package that says it's lifted from Python 3.5, but again, without an explicit license given.
If we can't verify the public domain status, then I think we probably want to do our own backport from the Python 3.5 source code and include the PSF license header in that module.

Codecov Report

Merging #1142 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master   #1142   +/-   ##
======================================
  Coverage     100%    100%
======================================
  Files          17      17
  Lines        1939    1939
======================================
  Hits         1939    1939

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 67accda...1edd86e. Read the comment docs.

I don't remember noting it as public domain, the only stuff that's public domain are the PowerShell scripts. The socketpair helper code is from the Python 3.5+ Windows socketpair implementation (taken from that gist originally) but asyncio also uses it.

I found where it is listed as public domain (apparently). I probably took it directly from asyncio as I was working on that project a lot at the time I made this change. https://github.com/python/asyncio/blob/master/asyncio/windows_utils.py#L37

I'll note here that continuous-integration/appveyor/py is currently not a required commit status for branch protection. Probably should be added.
While we are at it should also add codecov/project as being required now that the commit status has been used since activating Codecov.
I don't know if you can do this @Lukasa but I think this is something @shazow will also have to do.

@SethMichaelLarson Done!

So now a single TLSv1 test in Python 2.6 is failing because of errors? I haven't seen this error before but I'll look at it. Any ideas?

Probably this is an issue with Python 2.6 on Windows having a bad OpenSSL library.

Should we skip on Python 2.6 and Windows?

Might be the way to go, yeah.

Looks like a selector test failed on AppVeyor. Might have to go the same direction we did with Travis and increase the tolerance for timing on AppVeyor so we don't have random failures.

Sounds reasonable.

Forgot to whitelist APPVEYOR environment variable in tox. I've added that to the tox.ini

Look at all those green tests. Very nicely done!

There are quite a lot now aren't there! :) Huzzah to better coverage!


[BUG]: "Unsecure" is really insecure

Pre-submission checks

[X] I am not filing a feature request. These should be filed via the feature request form instead.
[X] I have looked through the open issues for a duplicate report.

Expected behavior
https://github.com/search?q=repo%3Awoodruffw%2Fzizmor unsecure&type=code
Actual behavior
https://github.com/search?q=repo%3Awoodruffw%2Fzizmor+insecure&type=code
Reproduction steps
Would you merge a renaming PR?

Yes, please send one!


Leverage initializeUnitTest

This utility function groups some nice high quality setup of the OutlineEditor and React. There's many unit test files where we're writing our custom initialization which is close to what this utility does. We can reduce redundancy by calling this function instead.

Already implemented.


Semantic error in the response-body of the paths./v1/translate-equipment-sequence-ids-to-ltp-uuids

In the OAS , in the line 509 , there is a Semantic error at paths./v1/translate-equipment-sequence-ids-to-ltp-uuids.post.responses.200.content.application/json.schema.properties.access-port-to-ltp-mappings.
Proposal :
the keyword "items:" shall be included

keyword will be added in spec v1.0.1


suspend() and resume() not implemented for OfflineAudioContext

import { OfflineAudioContext } from 'node-web-audio-api';
const context = new OfflineAudioContext(2, 44100, 44100);
const promise = context.startRendering();
await context.suspend(0.1); // Uncaught TypeError: context.suspend is not a function
await context.resume();
const audioBuffer = await promise;

In this issue comment, @b-ma said that they were deleting suspend() and resume() for OfflineAudioContext:

it should be mostly duplicating the file, modifying the constructor to handle the constructor signature and removing the extra online context methods (resume, suspend, etc.)

However, they are actually part of OfflineAudioContext, not exclusive to the online AudioContext, according to the WAA specs.

Hey,
Yup, that was actually a mis-wording from my part, indeed these methods exists in OfflineAudioContext but they are not yet implemented in the upstream library so the bindings do not exists yet.

Oh, I see. I just noticed orottier/web-audio-api-rs#100.

Fixed in #50 (might need a new release?)


How can I delete deployment local-path-provisioner  in  kue-system  namespace

Environmental Info:
K3s Version:
v1.20.6+k3s1
I deleted it use this command:
kubectl delete  deploy local-path-provisioner  -nkube-system
but when I restarted the k3s.service by systemctl restart k3s.service, It's recreated again.
so How can I delete deployment local-path-provisioner  in  kue-system  namespace.

thanks @ebrianne


Atom 1.0.3 "Open..." & "Add Project Folder..." don't work on OS X El Capitan Public Beta 2

You need to upgrade to Beta 3. (See https://github.com/atom/atom/issues/7811#issuecomment-126799086)


Fix the memory leak

There is no way to fix the memory leak. Besides, the mod is no longer necessary as of 1.20 as Mojang fixed the issue themselves.

What is the curve on the memory leak?  How much memory gets absorbed over how much time?


I need to remove or hide some of my old VS extensions.

I need to remove or hide some of my old VS extensions.
The extensions are those placed here -> https://marketplace.visualstudio.com/publishers/CodeRushCommunityContributors
I would gladly log in and do this myself, but I do not know the associated email to do so with.
Can someone tell me the associated email so that  I might attempt a password reset?
If necessary I am happy to cooperate in proving who I am.
Many thanks in advance.

@RoryBecker Can you please contact us at our support mail<EMAIL_ADDRESS>


AVRO-3353 simplified naming in CodeGen

Jira

[ ] My PR addresses the following Avro Jira issues and references them in the PR title. For example, "AVRO-1234: My Avro PR"

https://issues.apache.org/jira/browse/AVRO-3353

Tests

[ ] My PR  does not need testing for this extremely good reason: non functional change

Commits

[ ] My commits all reference Jira issues in their subject lines. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters (not including Jira issue reference)
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Documentation

[ ] In case of new functionality, my PR adds documentation that describes how to use it.

All the public functions and the classes in the PR contain Javadoc that explain what it does

Thank you, @KyleSchoonover !


chore(main): bump version to 2.1.8

:robot: I have created a release beep boop
2.1.8 (2023-01-15)
Code Refactoring

http service (0e1de77)

Documentation

added boilerplate structure in README.md (a79290f)
updated README.md and added image location in workflow file (8762cb4)

Chores

change cluster to native library (010d352)
changed from pnpm to node when start the app in production (3dfc6b9)
deps: upgrade dependency packages (b2dcf8b)
move env.ts inside src directory (1b276aa)
update .env.example (1f59e30)
update jest config to prevent haste module naming collision (2e45e23)
update lint stage regex config (ab665ef)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/kenso312/nestjs-v9-webpack-boilerplate/releases/tag/v2.1.8 :sunflower:


provided scope for sonar-plugin cause not needed in production package

this dependency is old and has many vulnerable dependencies.
with scope provided its not delivered in production.
its only used in a maven command by the pipeline.
alternative: update to newest plugin: https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin

Thanks !


chore: Update dependencies client-go and controller-runtime

What does this change
This updates client-go to 0.28.3-alpha while also having to update controller-runtime to 0.15.0
When updating it produced the following error:
../../go/pkg/mod/k8s.io/client-go@v0.27.3/applyconfigurations/meta/v1/unstructured.go:64:38: cannot use doc (variable of type *"github.com/google/gnostic/openapiv2".Document) as *"github.com/google/gnostic-models/openapiv2".Document value in argument to proto.NewOpenAPIData

Both releases here:
kubernetes issue with why we need client-go 0.28.0-alpha
controller-runtime
What issue does it fix
Closes # Dependabot PR
Dependabot PR that tried to do this automatically went to client-go 0.27.0 but we have to skip that to get this to work with the above issues.
Notes for the reviewer
Because of the breaking change of controller-runtime, there are some adjustments added to the tests to get them to pass.

[x] We have to add WithStatusSubResource(...) to the setup functions in the test or else we can't update the status on the reconcile
[x] We have to remove some assertions that will not persist the objects (pvc, pv) as the object tracker can create them in the fake client but not list/get them during operations.
[x]  None of the logic has been changed to the controller responsible
[x] I'm creating an issue to create smaller tests to coincide with how we expect this to work.

[x] https://github.com/getporter/operator/issues/220

Checklist

[ ] Did you write tests?

[x]  No, modified test(s) to work with the uplifted dependency.

[ ] Did you write documentation?

[x]  No, documentation is not necessary

[ ] Did you make any API changes? Update the corresponding API documentation.

[x] No changes to the api

https://github.com/getporter/operator/issues/220 <-- Issue link.
https://github.com/getporter/operator/pull/221 <-- Issue PR (increases the coverage but not the lifecycle of the controller, so it partially resolves this issue)
@schristoff


Implement hashCode() for all classes that override equals()

Some classes have the equals() method but not the hashCode() method, which may cause unexpected issues to occur.

Not enough time to do this.


SUNDAY Create functioning budget bar

Starting issue to develop budget bar
Weekly budgets:
DC: $1345
Virginia: $1345
Maryland: $1615
@colinxfleming @mebates @eheintzelman @NerdyGirl537 @vtmeghan

I can't find any images of our budget bar concept, gonna have to dig through some papers tonight.

Here's my original sketch for the budget bar. Basically we'll want to set the weekly budget for each call line, then create a bar that shows each week's:

Hard pledges (total $ of submitted pledges so far that week)
Soft pledges (total $ of soft pledges made so far that week)
a line for the weekly budget
Space for either the hard, soft or both pledges to go over the weekly budget

To start specing this out from dev side, this entails:

The ability to set a global budget for a line - probably a new user route or a new budgets controller
The ability to increase $$ for a line for weeks when we go over (prob a gold medal version)
The ability to calculate sent pledges in a given week (might mean this is not embedded in Patient objects since we'll be interacting with them separately here?) - class method on Pledge will do nicely for this
A way to turn that into an HTML bar via some helper methods!

The clean way is to implement Pledge objects, probably, but we can do it on Patient objects as well if necessary.

After thinking about this I think we should set budgets as environment variables in the app (and not have them CMD-editable for now), and focus on the latter two items. Breaking them into issues now.

Spec'd out the major parts of this in #709 and #710, and added them to sprint! Spec-ing this out in this limited way I'm very optimistic that we can have this done without too much additional hustling.

Soft pledges need to be accumulated over two weeks rather than one. Also, if I made a soft pledge a month ago, I should be able to have it counted towards this week's total (even if I don't change it) if I receive a call from them this week. This is complicated!

We discussed tonight that we don't want to give the ability to change the budget. CMs can go over at the discretion of their CMD but we will have better data if we leave the budget in tact.
Clarified visuals tonight, using colors from DCAF logo:
budget bar.pdf

Trying some different language here per @NerdyGirl537's great comments in #630. But 'With outstanding pledges' was too long - any other ideas?

I think these are the remaining things here once we have an initial bar in (copied from the mvp PR):

[ ] Account for possibility of overflow
[ ] Set a minimum width or some way to drop $$ info into the view like in the #710 picture
[ ] Possibly adjust CSP to allow for inline style (consult with @mccabe615 about the goodness of this idea, otherwise we can whip up something in a stylesheet I'm sure)
[ ] Apply other styling as requested by team UX (iteration round)
[ ] Test things!

@DarthHater I'm tagging you in on this! I have a half started PR that I'll get into shipshape for you to run with.

I want to really explicitly enumerate the decision tree in @mebates ' comment here:
Soft pledges need to be accumulated over two weeks rather than one. Also, if I made a soft pledge a month ago, I should be able to have it counted towards this week's total (even if I don't change it) if I receive a call from them this week. This is complicated!

Given that it's Thursday and that DCAF funding weeks run Monday thru Sunday,

I called today and have money pledged but not sent for an appointment tomorrow (Friday). This should count in the budget bar as an outstanding pledge.
I called today and have money pledged and sent for an appointment tomorrow (Friday). This should count in the budget bar as sent money.
I called today and have money pledged but not sent for an appointment next Tuesday. This should count in the budget bar as an outstanding pledge, because of the two week rule above.
I called today and have money pledged and sent for an appointment next Tuesday. This should not count in the budget bar as sent money, until Monday rolls around, and then it should.
I called today and have money pledged but not sent for an appointment three weeks from now. This should not count in the budget bar as an outstanding pledge, unless I call back less than two weeks out.
I called DCAF a month ago and had money pledged for an appointment this week. I spoke to a CM on Tuesday. This should count as an outstanding pledge.
I called DCAF a month ago and had money pledged for an appointment this week. I haven't spoken to anyone since. This should not count as an outstanding pledge.

I'm having a hard time coming up with a solution for soft pledge a month ago counts toward this week's total (the last thing in @mebates 's comment) that doesn't assume near perfect use, but this is my best shot. Can I get a gut check on those rules @NerdyGirl537 @lwaldsc ?
I would coalesce those as follows (again, assumes perfect use of the phone call logger, which I'm not sure we can count on, frankly):
if pledge_sent && appointment_date is this week
  add to sent_total
elsif fund_pledge exists && appointment_date is this week or next week && the most recent call is the DCAF week of, or week before, the appointment date
  add to outstanding_total

There's also a simplified option here which I'll suggest, and that's a money this week model. Would have the benefit of being less tailored to DCAF specifically and more general purpose -- something that looks like Money pledged but not sent for appointments this week: 400, money sent for appointments this week: 500. Not sure of the utility but I think this is a really tough problem to crack since the rules of what counts for this week vs not seem to be so complex.


Broken stack traces

For example, I have this profile data generated from my application:
https://www.speedscope.app/#profileURL=https://swift-kim.github.io/warehouse/data/HeartRateMonitor.10068.speedscope.json
In the time-order view, I can see some weird stack frames like xamarin.forms.platform.tizen!Xamarin.Forms.Forms.SetupInit (frame 7) which shouldn't appear for more than 103.8ms (1146.5 - 1250.3) according to the raw data.
I also made a simple python program which prints a callstack at a specific time from a speedscope file.
https://gist.github.com/swift-kim/f6f2e2450fe91708f97656aaf6a35281
When I run this program with HeartRateMonitor.10068.speedscope.json 280 as arguments, the result looks like:
UNMANAGED_CODE_TIME
heartratemonitor!HeartRateMonitor.Views.MeasurementPage.InitializeComponent()
heartratemonitor!HeartRateMonitor.Views.MeasurementPage..ctor()
heartratemonitor!HeartRateMonitor.App..ctor()
heartratemonitor!HeartRateMonitor.Program.OnCreate()
Tizen.Applications.UI!Tizen.Applications.CoreBackend.UICoreBackend.OnCreateNative(int)
Tizen.Applications.UI!Tizen.Applications.CoreBackend.UICoreBackend.Run(class System.String[])
Tizen.Applications.Common!Tizen.Applications.CoreApplication.Run(class System.String[])
Tizen.Applications.UI!Tizen.Applications.CoreUIApplication.Run(class System.String[])
heartratemonitor!HeartRateMonitor.Program.Main(class System.String[])
Thread (10068)
Threads
(Non-Activities)
Process32 Process(10068) (10068) Args:

However, speedscope.app shows a different result with some missing stack frames (heartratemonitor!HeartRateMonitor.*). (This is only an example.)
UNMANAGED_CODE_TIME
> UNMANAGED_CODE_TIME
> xamarin.forms.core!Xamarin.Forms.Application..ctor()
> xamarin.forms.platform.tizen!Xamarin.Forms.Platform.Tizen.FormsApplication.InitializeWindow()
> Tizen.Applications.UI!Tizen.Applications.CoreBackend.UICoreBackend.OnCreateNative(int)
> Tizen.Applications.UI!Tizen.Applications.CoreBackend.UICoreBackend.Run(class System.String[])
> Tizen.Applications.Common!Tizen.Applications.CoreApplication.Run(class System.String[])
> UNMANAGED_CODE_TIME
> xamarin.forms.platform.tizen!Xamarin.Forms.Forms.SetupInit(class Tizen.Applications.CoreApplication,value class System.Nullable`1<value class Xamarin.Forms.InitializationOptions>)
> heartratemonitor!HeartRateMonitor.Program.Main(class System.String[])
> Thread (10068)
> Threads
> (Non-Activities)
> Process32 Process(10068) (10068) Args:

At the same time, PerfView works nicely although it doesn't have a time-order view.

Since I'm not good at TypeScript, could anybody help me with finding the underlying issue?
Appendix

Application source code (Tizen application): https://github.com/Samsung/Tizen-CSharp-Samples/tree/master/Wearable/HeartRateMonitor
Raw nettrace file: https://github.com/swift-kim/warehouse/raw/master/data/HeartRateMonitor.10068.nettrace.zip

Thanks for the clear report!
The bug here is that the provided input profile doesn't match up it's O and C events symmetrically. Here's the start of the profile:
[
  { "type": "O", "frame": 0, "at": 1130.948461 },
  { "type": "O", "frame": 1, "at": 1130.948461 },
  { "type": "O", "frame": 2, "at": 1130.948461 },
  { "type": "O", "frame": 3, "at": 1130.948461 },
  { "type": "O", "frame": 4, "at": 1130.948461 },
  { "type": "O", "frame": 5, "at": 1130.948461 },
  { "type": "C", "frame": 5, "at": 1136.3827679539413 },
  { "type": "O", "frame": 6, "at": 1136.382768 },
  { "type": "O", "frame": 5, "at": 1136.382768 },
  { "type": "O", "frame": 5, "at": 1138.993153 },
  { "type": "C", "frame": 5, "at": 1138.9931530194092 },
  { "type": "C", "frame": 6, "at": 1138.9931530194092 }
]

The specific problem is the last 5 events. There's a sequence here that looks like:
O 6
O 5
O 5
C 5
C 6

The python script you made validates that the closed frame is in the stack when it's closed, but it doesn't validate that it's at the top of the stack when it's closed. Speedscope doesn't support closing stack frames that aren't at the top because it doesn't make any sense. They have the same timestamp here so you could argue that they close at the "same time", but I'd rather make file format outputters be responsible for well formed inputs than make speedscope do lookahead to figure out if it needs to look at many events and sort them.
All that said, I agree this is bad behavior in speedscope: it should fail input in this scenario rather than display the wrong thing. I'll put a PR to make this fail loudly.

Oh, I see -- this is probably a bug with the code written in https://github.com/microsoft/perfview/blob/master/src/TraceEvent/Stacks/SpeedScopeStackSourceWriter.cs. I'll file a bug.

Thanks and I'll also take a look if it was a bug in TraceEvent!


Why the SUSE contributions got deleted?

Why the SUSE contributions got deleted?

Changes to common files necessitated limiting master to distros that we build, test, and support.
The unofficial branch now contains community contributed distros, as well as any legacy distros that we no longer maintain and support.


Bounty - Defillama Adapter - $1000 USD

Objective
Create an adapter for https://defillama.com/ for the Meter Chain
Context
The Meter ecosystem is poised for growth. We are looking to gain exposure to broader DeFI users through integration with defillama.
Reference
https://docs.llama.fi/list-your-project/submit-a-project
Acceptance Criteria

[x] Create and test the adapter
[x] Submit and Merge the PR

Reward
$1000 USD paid in MTRG tokens upon delivery

I've created the adapter and put in a PR here: https://github.com/DefiLlama/DefiLlama-Adapters/pull/1318

Integration completed.


[CEN][HIGH PRI] Submit to backend when reporting

When we confirm self report, submit the metadata to the backend.
With what's currently implemented, that just means using BLE's code which connects to Firebase

Finished in libcen-and-ux, being merged forwards now