issue training / generating with polyphony_rnn

Hello,
After (apparently successfully) learning an polyphony_rnn model, I cannot generate any sequence.
If I try to generate from the checkpoint, it returns the following:

INFO:tensorflow:Checkpoint used: ./2017_05_04//run1/train/model.ckpt-3122
INFO:tensorflow:Restoring parameters from ./2017_05_04//run1/train/model.ckpt-3122
2017-05-04 18:18:18.663347: W tensorflow/core/framework/op_kernel.cc:1152] Not found: Key rnn/multi_rnn_cell/cell_2/basic_lstm_cell/weights not found in checkpoint
2017-05-04 18:18:18.666763: W tensorflow/core/framework/op_kernel.cc:1152] Not found: Key rnn/multi_rnn_cell/cell_2/basic_lstm_cell/biases not found in checkpoint

It is followed by a long traceback call message (that I'll provide if it helps).
Unsurprisingly I also cannot generate a bundle file from my checkpoint, for the same reason.
Any suggestion?

Can you include the commands you were using to train and generate? Also might as well include the traceback just to be sure.

Sure thing!
I've been using some shell scripts to execute those commands, hence the ${n}, I guess the actual values are not relevant.
Training command:
python ${MAGENTA_PATH}/models/polyphony_rnn/polyphony_rnn_train.py --run_dir=${1}/run${3} --sequence_example_file=${1}/tfSequences/training_poly_tracks.tfrecord --hparams="{'batch_size':64,'rnn_layer_sizes':[64,64],'initial_learning_rate':0.0001}" --num_training_steps=${4}
Generation command:
python ${MAGENTA_PATH}/models/polyphony_rnn/polyphony_rnn_generate.py  --run_dir=${1}/run${2} --output_dir=${1}/generated --num_outputs=${3} --num_steps=128 \
--primer_pitches=${4} \
--condition_on_primer=true \
--inject_primer_during_generation=false

Generation traceback:

INFO:tensorflow:hparams = {'rnn_layer_sizes': [256, 256, 256], 'decay_rate': 0.95, 'dropout_keep_prob': 1.0, 'batch_size': 1, 'decay_steps': 1000, 'clip_norm': 5, 'initial_learning_rate': 0.001, 'skip_first_n_losses': 10}
WARNING:tensorflow:<tensorflow.contrib.rnn.python.ops.core_rnn_cell_impl.BasicLSTMCell object at 0x7fddfb80e690>: Using a concatenated state is slower and will soon be deprecated.  Use state_is_tuple=True.
WARNING:tensorflow:<tensorflow.contrib.rnn.python.ops.core_rnn_cell_impl.BasicLSTMCell object at 0x7fddfb80e5d0>: Using a concatenated state is slower and will soon be deprecated.  Use state_is_tuple=True.
WARNING:tensorflow:<tensorflow.contrib.rnn.python.ops.core_rnn_cell_impl.BasicLSTMCell object at 0x7fde05c6dd50>: Using a concatenated state is slower and will soon be deprecated.  Use state_is_tuple=True.
INFO:tensorflow:Checkpoint used: ./2017_05_04//run1/train/model.ckpt-3122
INFO:tensorflow:Restoring parameters from ./2017_05_04//run1/train/model.ckpt-3122
2017-05-04 20:47:29.315896: W tensorflow/core/framework/op_kernel.cc:1152] Not found: Key rnn/multi_rnn_cell/cell_2/basic_lstm_cell/weights not found in checkpoint
2017-05-04 20:47:29.320142: W tensorflow/core/framework/op_kernel.cc:1152] Not found: Key rnn/multi_rnn_cell/cell_2/basic_lstm_cell/biases not found in checkpoint
Traceback (most recent call last):
File "/home/pierre/HumtapGit/magenta/magenta//models/polyphony_rnn/polyphony_rnn_generate.py", line 265, in
console_entry_point()
File "/home/pierre/HumtapGit/magenta/magenta//models/polyphony_rnn/polyphony_rnn_generate.py", line 261, in console_entry_point
tf.app.run(main)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/platform/app.py", line 48, in run
_sys.exit(main(_sys.argv[:1] + flags_passthrough))
File "/home/pierre/HumtapGit/magenta/magenta//models/polyphony_rnn/polyphony_rnn_generate.py", line 257, in main
run_with_flags(generator)
File "/home/pierre/HumtapGit/magenta/magenta//models/polyphony_rnn/polyphony_rnn_generate.py", line 227, in run_with_flags
generated_sequence = generator.generate(primer_sequence, generator_options)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/magenta/music/sequence_generator.py", line 203, in generate
self.initialize()
File "/home/pierre/miniconda2/lib/python2.7/site-packages/magenta/music/sequence_generator.py", line 149, in initialize
self._model.initialize_with_checkpoint(checkpoint_file)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/magenta/music/model.py", line 63, in initialize_with_checkpoint
saver.restore(self._session, checkpoint_file)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 1545, in restore
{self.saver_def.filename_tensor_name: save_path})
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 786, in run
run_metadata_ptr)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 994, in _run
feed_dict_string, options, run_metadata)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1044, in _do_run
target_list, options, run_metadata)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1064, in _do_call
raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.NotFoundError: Key rnn/multi_rnn_cell/cell_2/basic_lstm_cell/weights not found in checkpoint
[[Node: save/RestoreV2_7 = RestoreV2[dtypes=[DT_FLOAT], _device="/job:localhost/replica:0/task:0/cpu:0"](_recv_save/Const_0, save/RestoreV2_7/tensor_names, save/RestoreV2_7/shape_and_slices)]]
Caused by op u'save/RestoreV2_7', defined at:
File "/home/pierre/HumtapGit/magenta/magenta//models/polyphony_rnn/polyphony_rnn_generate.py", line 265, in
console_entry_point()
File "/home/pierre/HumtapGit/magenta/magenta//models/polyphony_rnn/polyphony_rnn_generate.py", line 261, in console_entry_point
tf.app.run(main)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/platform/app.py", line 48, in run
_sys.exit(main(_sys.argv[:1] + flags_passthrough))
File "/home/pierre/HumtapGit/magenta/magenta//models/polyphony_rnn/polyphony_rnn_generate.py", line 257, in main
run_with_flags(generator)
File "/home/pierre/HumtapGit/magenta/magenta//models/polyphony_rnn/polyphony_rnn_generate.py", line 227, in run_with_flags
generated_sequence = generator.generate(primer_sequence, generator_options)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/magenta/music/sequence_generator.py", line 203, in generate
self.initialize()
File "/home/pierre/miniconda2/lib/python2.7/site-packages/magenta/music/sequence_generator.py", line 149, in initialize
self._model.initialize_with_checkpoint(checkpoint_file)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/magenta/music/model.py", line 60, in initialize_with_checkpoint
saver = tf.train.Saver()
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 1139, in init
self.build()
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 1170, in build
restore_sequentially=self._restore_sequentially)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 691, in build
restore_sequentially, reshape)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 407, in _AddRestoreOps
tensors = self.restore_op(filename_tensor, saveable, preferred_shard)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/training/saver.py", line 247, in restore_op
[spec.tensor.dtype])[0])
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/ops/gen_io_ops.py", line 669, in restore_v2
dtypes=dtypes, name=name)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/framework/op_def_library.py", line 768, in apply_op
op_def=op_def)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 2336, in create_op
original_op=self._default_original_op, op_def=op_def)
File "/home/pierre/miniconda2/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 1228, in init
self._traceback = _extract_stack()
NotFoundError (see above for traceback): Key rnn/multi_rnn_cell/cell_2/basic_lstm_cell/weights not found in checkpoint
[[Node: save/RestoreV2_7 = RestoreV2[dtypes=[DT_FLOAT], _device="/job:localhost/replica:0/task:0/cpu:0"](_recv_save/Const_0, save/RestoreV2_7/tensor_names, save/RestoreV2_7/shape_and_slices)]]

I notice that at the beginning of the traceback of the generation part, it displays 'rnn_layer_sizes': [256, 256, 256] (while the training was actually done with size [64, 64]). Is it relevant?

Yes, that's the issue. You need to specify the same layer sizes via the hparams flag when you generate as when you trained.

I actually had tried that, using this generation command instead:
python ${MAGENTA_PATH}/models/polyphony_rnn/polyphony_rnn_generate.py  --run_dir=${1}/run${2} --output_dir=${1}/generated --num_outputs=${3} --num_steps=128 \
--hparams="{'batch_size':64,'rnn_layer_sizes':[64,64]}"\
--primer_pitches=${4} \
--condition_on_primer=true \
--inject_primer_during_generation=false

It yields exactly the same result. (Including the display of 'rnn_layer_sizes': [256, 256, 256])

The hparams parsing issue fixing documented in #592 is only applied to the training and also needs applied on the generation part.
I did it and I can now generate.

Ah, good catch. I'll take a look at that.


Feature #1580, Docker Image

Type

[ ] Bug Fix
[x] New Feature
[ ] Sample

Related Issues?
Completes #1580
What is in this Pull Request ?
Docker image with PnP.PowerSshell is published to Docker Hub

hi @shurick81 , looks like amazing stuff !
Looked at your PR and had a few questions:

You modified the release pipeline, is it so that everytime we publish the nightly, it will also publish to Docker ?

It requires a Docker user name and password, so do create it in docker and then create the secret in our repository with those values ?

Do we need to create an account on docker before we can publish this image ?

Is it free or we need to pay some amount for publishing ?

Sorry , dont have a clue about docker. Also, please correct me if the questions or their premise is wrong :)

Hi @gautamdsheth, thanks for finding time for reviewing this commit.
Here are short answers on the questions :)

yes
I already talked to Koen and Waldek, so the variables with user name and password are already in place for this Github project
No need to create a new account because there is already account that we can use
As far as I know, we don't need to pay anything extra but it should be probably Waldek who is aware of the specific Docker plan we are using

I just realized that the description of this PR was pointing a wrong issue (1589 instead of 1580). Now corrected the description.
By the way, what is our next step regarding this PR?

@shurick81: can you explain the use of the release.yml action/workflow? I see the addition to the nightlyrelease workflow, but I do not see easily what the release.yml one is doing?

Hi @erwinvanhunen, let me put it like this.
This is what we now have in https://github.com/pnp/powershell:

Release Type
Module Build in Pipeline
Publishing to the PS Gallery in Pipeline
Publishing to the Docker Hub in Pipeline
Pipeline

Nightly Releases
:white_check_mark:
:white_check_mark:
:white_large_square:
nightlyrelease.yml

Supported Releases
:white_large_square:
:white_large_square:
:white_large_square:
#N/A

Here's what I offer in PR:

Release Type
Module Build in Pipeline
Publishing to the PS Gallery in Pipeline
Publishing to the Docker Hub in Pipeline
Pipeline

Nightly Releases
:white_check_mark:
:white_check_mark:
:white_check_mark:
nightlyrelease.yml

Supported Releases
:white_large_square:
:white_large_square:
:white_check_mark:
release.yml

Later on there will be opportunity to put more things in release.yml. Does it make sense?

I have also added user documentation, here's how it looks on the Docker Hub: https://hub.docker.com/r/asapozhkov/powershell.
It should be copied manually from the md document: https://raw.githubusercontent.com/alexsapozhkov/powershell/dev/docker/hub.docker.md.
I also added a few lines here: https://github.com/alexsapozhkov/powershell/blob/dev/pages/index.md

@shurick81 - much clearer thanks !!
What I didnt understand about the release action(release.yml)  is the CRON value.
Why are you releasing it everyday at 3:30 ? Did you mean it every 30 days or something ? Unless I am completely mistaken.
The thing is, we dont have a fixed release cadence, however much we would like to unfortunately :(
So, major release usually happens every 2-3 months and we dont have a fixed date/time for it.
Can you please change it a manual one instead ? I will try to trigger it at every release

Hi @gautamdsheth, the logic behind is that this job that we can run daily is smart enough and it is identifying those versions of the module that are published in PS Gallery but not published yet in Docker Hub. So it should be fine to run it automatically and it will eventually publish a new module version. However, if you want to run it manually anyway, there is no problem, I can remove the CRON value.

Thank you @shurick81 , have merged the PR !
Looks great !
One request though :)
If you have some time, could be also please write an article (100 level) on how to go about using this ? Basic stuff for people new to Docker and all .
You can write it in markdown and add it here ?
https://github.com/pnp/powershell/tree/dev/pages/articles
This is a request, you can totally ignore it :)
Also, if you are interested, would you like to demo it in a PnP Community call, would love to see it in action  ? We can help with that.
Thank you so much again for the amazing work 🙏😊

Hi @gautamdsheth we already have some documentation here: https://pnp.github.io/powershell/. But probably we could mention that before using this Docker image, one needs to have Docker engine installed?


[FEATURE REQUEST] Cursor position

Could be toggleable via setup.

I'll give it a go

I was just going to make this FR. I'll give it a go too!

I was just going to make this FR. I'll give it a go too!

I haven't yet started this up, should I take this as you wanting to implement it?

I did take a look around the repo, but since I'm still pretty new to Lua and neovim I didn't know where to start. Seems like it was easy enough for you though!


Document state doesn't update when using TestCafe with Concurrency

Are you requesting a feature or reporting a bug?

Bug
What is your Test Scenario?

Our users can either log in via a 'magic email link' or by entering their password. In order to see the password field, we have the user click a link that will show/hide the respected fields.
What is the Current behavior?

When running the tests with TestCafe and concurrency, the page states do not update and clicking the link does not update the page state either.
What is the Expected behavior?

Default login view displays
User clicks link
Password field displays
User enters information
User clicks Sign In

How would you reproduce the current behavior (if this is a bug)?

Run the test with concurrency (We have a default value of 7)
Provide the test code and the tested page URL (if applicable)

Your website URL (or attach your complete example): https://accounts.reborncf.com/users/sign_in

I can't provide you usernames or passwords, but the focus is on the page state, not the functionality.

Your complete test code (or attach your test files)
import { Selector, t } from 'testcafe'

class LoginPageObjects {
    constructor() {
        this.txt_user_email = Selector('#user_email')
        this.txt_user_password = Selector('#user_password')
        this.btn_sign_in = Selector('input').withAttribute('value', 'Sign in')
        this.link_login_with_password = Selector('a').withText('Or Login with Password')

    async login_with_password(user_email, user_password){
        // Purpose: Populates the username and clicks the login link to enter password.
        // Param: user_email
        // Param: user_password

        await t
            .click(this.link_login_with_password)
            .typeText(this.txt_user_email, user_email, { replace: true, paste: true } )
            .typeText(this.txt_user_password, user_password, { replace: true, paste: true } )
            .click(this.btn_sign_in)
    }

export default new LoginPageObjects()

fixture `login`
    .page `reborncf.com/users/sign_in`

test('user_can_log_in', async t => {
     await LoginPageObjects.login_with_password(data.users.account_owner.user_email,
          data.users.account_owner.user_password)

Your Environment details:

testcafe version:                   1.15.2
node.js version:                    v16.5.0
command-line arguments:  testcafe chrome -t "user_can_log_in" -c 7
browser name and version: chrome 93.0.4577.82
platform and version:          macOS Big Sur Version 11.6
other:

Hello,
While researching the issue, I noticed that immediately after loading, the login form is in a state that is apparently not normal:

In this video, I reload the page you are testing:

This behavior becomes even more noticeable during testing, because the scripts responsible for changing the shape take longer than usual to process. Thus, this is not a TestCafe issue. It is a peculiarity of your site that TestCafe demonstrates more explicitly than with manual testing.
The easiest workaround to test your page in the current state is to add a delay to the login_with_password function before the 'Or Login with Password' link is clicked:
async login_with_password(user_email, user_password){
    await t
        .wait(2000)     // this delay will allow you to wait for the form to be redrawn
        .click(this.link_login_with_password)
        .typeText(this.txt_user_email, user_email, { replace: true, paste: true } )
        .typeText(this.txt_user_password, user_password, { replace: true, paste: true } )
        .click(this.btn_sign_in);
}

You're right, redrawing a form in concurrency mode takes a very long time. We will research this issue to see if we can fix this on the side of TestCafe.
Stay tuned for our updates on this issue.


Bug bounty test - PLEASE DO NOT APPROVE. opdpdl

Bug bounty test - PLEASE DO NOT APPROVE. opdpdl

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

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


make build fails with "tsdb already exists and is a directory"

Use case. Why is this important?
We are building Prometheus from source, following the instructions from the README.
Bug Report
What did you do?
make build.
What did you expect to see?
No failure.
What did you see instead? Under which circumstances?
/go/src/github.com/prometheus/prometheus # make build
curl -s -L https://github.com/prometheus/promu/releases/download/v0.5.0/promu-0.5.0.linux-amd64.tar.gz | tar -xvzf - -C /tmp/tmp.bfakpO
promu-0.5.0.linux-amd64/
promu-0.5.0.linux-amd64/promu
promu-0.5.0.linux-amd64/NOTICE
promu-0.5.0.linux-amd64/LICENSE
mkdir -p /go/bin
cp /tmp/tmp.bfakpO/promu-0.5.0.linux-amd64/promu /go/bin/promu
rm -r /tmp/tmp.bfakpO
>> building binaries
GO111MODULE=on /go/bin/promu build --prefix /go/src/github.com/prometheus/prometheus
 >   prometheus
 >   promtool
 >   tsdb
go build github.com/prometheus/prometheus/tsdb/cmd/tsdb: build output "/go/src/github.com/prometheus/prometheus/tsdb" already exists and is a directory
!! command failed: build -o /go/src/github.com/prometheus/prometheus/tsdb -ldflags -X github.com/prometheus/common/version.Version=2.13.0 -X github.com/prometheus/common/version.Revision=6ea4252299f542669aca11860abc2192bdc7bede -X github.com/prometheus/common/version.Branch=HEAD -X github.com/prometheus/common/version.BuildUser=root@42b5b3e2c466 -X github.com/prometheus/common/version.BuildDate=20191007-14:24:39  -extldflags '-static' -mod=vendor -a -tags netgo github.com/prometheus/prometheus/tsdb/cmd/tsdb: exit status 1
make: *** [Makefile.common:204: common-build] Error 1

Environment
I was running the build in a golang:1.12-alpine3.10 Docker container.

System information:
Linux 4.9.184-linuxkit x86_64

Prometheus version:
v2.13.0 (I also tried building from master)

The build works with Go 1.13.
Based on the release notes I assumed I should still use Go 1.12.


Update User Guide and PPP

Codecov Report

Merging #32 (54e23e2) into master (1dcff14) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #32   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

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 1dcff14...54e23e2. Read the comment docs.

LGTM! :smiley:


Duke Nukies & stamcrit resistance

About the PR

CL :trollface:
also added stamina damage resistance which can be enabled by simply adding a StaminaDamageResistance component with the coefficient to an entity. very cool
now all hardsuits have 25% stamdmg resistance, bloodred has 50%, elite - 75%, jugger - 65%
might add more stamdmg res to death squad or chrono gamer gear
Why / Balance

i always wanted to balance nukies and i think i did a good job at it
GOD I LOVE TEH DUKE NUKEI
Media
hardsuit stamcrit resistance check

roundstart nukie changes

cool new sprites

reinforcement changes

:cl:

add: Now all hardsuits have different stamina damage resistance.
add: Nuclear operatives now spawn without hardsuits but with 50 more TC.
add: Nuclear operative reinforcements now spawn with a bonus uplink with 50 TC.
tweak: Changed nuclear operative hardsuit sprites.
tweak: Decreased raid suit price to 30 TC
tweak: Increased syndicate elite suit price to 70 TC
tweak: Increased juggernaut suit price to 100 TC
tweak: Increased the chinalake price to 150 TC
tweak: Decreased nukie reinforcement agent price to 125 TC

i think that stun resist is way too high, 0% for civ suits, 25% base for sec and nukie suits, then maybe 50% for elite and jug. also make the elite suit have 0 speed penalty.

OP doesn't explain a single bit about balancing
Maintainer jr. doesn't explain anything about his requested balance changes in response

also, you should probably make the resprite a seperate PR from this.

just initial nerfs to get it in some kind of reasonable ballpark, will calculate the required number of stuns etc in a bit

just initial nerfs to get it in some kind of reasonable ballpark, will calculate the required number of stuns etc in a bit

There's not a single effective nerf in this PR.

being immune to stuns with stimulants is fine

being immune to stuns with stimulants is fine

You're expected to elaborate

stims making you stun immune is fine, they're not easy to get en masse and you have to constantly inject yourself

stims making you stun immune is fine, they're not easy to get en masse and you have to constantly inject yourself

I don't believe you've seen HM2 Tony RP with a guy full of stimkits and northstars getting full combo on the entire station before. Stimulants do more than just double your total stamina atm - they also massively increase your speed and heal you when you're at 70 damage or above but not crit.

This is not to mention that you'll be playing with abstract numbers and balance ping-pong because you'll have to now account for the stam resist modifiers and the total amount of stamina you have.

ok addressing changes now

tied to a resprite for no real reason

my bad og, it was supposed to be a modsuit PR but i got a bit carried away

Taking away hardsuits but giving 50 more telecrystals effectively gives them 50 tc for free if they decide to take anything but the default hardsuit

ok, so what? why not eco and buy something like raid suits? this leaves more TC for nukies to spend on gimmicks

bright individuals forgetting to buy a hardsuit in the first place and getting forced into an EVA suit off the shuttle instead

if someone doesn't buy armor that's his problem, why do we need to tune the mechanics towards the new playerbase? they won't be able to learn from mistakes if we remove mistakes from the game :trollface:

ok here's my stam resistance changes:
all nukie hardsuits - 50%
engi, security - 25%
warden, CE - 35%
hos, captain, wizard, ERT - 50%
death squad - 90%

if someone doesn't buy armor that's his problem, why do we need to tune the mechanics towards the new playerbase? they won't be able to learn from mistakes if we remove mistakes from the game :trollface:

Mistakes of one guy reflect on the whole team. If this skill issue wouldn’t have affected anyone else you’d have some ground to stand on.


Relocate branches

Feature description
Git Machete shines with the "rebase to edit the current branch" workflow, but I think it could be better with the "rebase to change the base of a branch" workflow.
Examples:

Move up the hierarchy (becomes its parent's sibling): rebase from the base of the parent branch, drop all commits which are in the parent but not the child
Move down the hierarchy (becomes its sibling's child): rebase from the base of the branch onto the new child

Both of these are easily doable today for users who understand Git well (edit the .machete file manually then use Machete to rebase and drop what shouldn't be there), but I think they could be made easier to use? Maybe by drag-and-drop'ing in the tool window?

This idea has almost 3 years already (https://github.com/VirtusLab/git-machete-intellij-plugin/issues/231) 😅
I agree that it would be very handy to be able to drag & drop the branches and more convenient than the machete file edition. 👍
As you can see in the original issue we had decided to drop this idea as

there is the mentioned workaround with editing the machete file 🔧
it seems to be complicated - drag&drop handling indentions, multiple separate root branches, looking and working nice, developed by programmers by engineers with backend experience only 😅

However, as this time the issue has been brought up from outside (by you!) we surely reconsider it 🙂

Ahah, I understand your points. You're right, the workaround is easy (at least for developers who understand Git well). Feel free to close this as duplicate if you want to.


feat: JIRA-14001 Upgrade to PHPStan 2.x

Upgraded to PHPStan 2.x for a 2.0 release.

Fine with me. 👍🏻 Happy for this to be merged now, or can wait until Rector 2.x is released for worksome/coding-style#80

I will wait until Rector 2.x is released so I don't have to make a new PR to change the coding-style dependency.
We can reference this branch now when testing upgrading platform to PHPStan 2 😊

Just pushed to update to Coding Style 3.x, so this is ready to go. 👍🏻


Setup Cross Platform Build & Test System for CI & Dev

@hhff anything I can help with here? (Or anything related?)


GLZ_ENUM without //  in context.hpp

I have one question.
Is it necessary to put // after the first parameter of GLZ_ENUM in context.hpp?
   GLZ_ENUM(error_code,
            none, //
            no_read_input, //

https://github.com/stephenberry/glaze/blob/v2.9.4/include/glaze/core/context.hpp#L15-L17
It works fine in gcc, but I was wondering because there is a // after GLZ_ENUM_MAP in schema.hpp.
   GLZ_ENUM_MAP(defined_formats, //
                "date-time", datetime, //
                "date", date, //

https://github.com/stephenberry/glaze/blob/v2.9.4/include/glaze/json/schema.hpp#L139-L141

The // should not be necessary at all. They were just put there for the sake of clang-format.

@stephenberry
Thanks!
Now I understand.


Is to_path efficiency note correct?

In Accessing and displaying related items, it says:

We use :py:meth:rel.to_path and use the items path to query the catalog for its catalog-entry. This is much more efficient than using :py:meth:rel.to_object since we don't have to wake up any objects. Setting depth to 0 will only return items with exactly this path, so it will always return a list with one item.

Is that really correct? I see that to_path calls to_object.

@pbauer FYI.

@pbauer can you check this? I can confirm that using to_path is worse than using to_object.

Thanks for the feedback. Would you like to cerate a pull-request for this chapter?

@pbauer I'm out of time now. But I think that example would be better:
https://github.com/plone/plone.app.dexterity/blob/82bba1e369d7a2678f358b7ffa2b9fc873429afc/docs/advanced/references.rst#back-references


Extra/Improved repository stats

Description
Knowing what languages are used are nice, but it's also interesting to see file extensions based
let's say a repo has a shit ton of json files, or has a lot of docs and thus lots of .md files

Example URLs
N/A, all repos

It's not something GitHub exposes, we'd have to query the entire list of files in the repo.


Swift for iPhone

Is there a Swift for iPhone of the Demo?

Why do you want an iPhone Demo?
This code is meant to be run on a server, what do you expect from an iPhone Demo?
I just want to know your point of view, maybe will be useful for others 😄

First of all,Thank you for your reply.
We're going to do an application that includes chat functionality.
I'd like to find telegram swift version of the SDK, but I can't find it.
Maybe you can tell me more about telegram.
If my description is ambiguous, please forgive me.

First of all,Thank you for your reply.
We're going to do an application that includes chat functionality.
I'd like to find telegram swift version of the SDK, but I can't find it.
Maybe you'll know more about the telegram, so I want to try my luck.
If my question is an interruption to you, please forgive me.

First of all,Thank you for your reply.
We're going to do an application that includes chat functionality.
I'd like to find telegram swift version of the SDK, but I can't find it.
Maybe you'll know more about the telegram, so I want to try my luck.
If my question is an interruption to you, please forgive me.

I'm sorry but is a bit different, I'm only handling Bot Telegram APIs.
This project may be useful to you


fix header for slack verification

Tiny change I had to make for the slack verification to work

https://github.com/howdyai/botkit/issues/2194

@benbrown Could you review this PR? I need this fix to verify my slack bot.


Custom seperators?

For example powerline seperators or semi circle seperators

Do you mean for the bufferline? Yes there is an option for that:
require('hardline').setup {
  bufferline = true,
  bufferline_settings = {
      exclude_terminal = false,
      show_index = false,
      separator = '|',
  },
}

The README is not up-to-date, I'll update it asap sorry.
If you meant for the statusline, there's no single option for that but you can define your own statusline via the option table and insert the separator between each section yourself.

i meant for both and i was thinking of adding seperators myself maybe a color class separately of type seperator can be added?

Not sure what you mean sorry. But feel free to submit a PR with your feature if you want :). In the meantime I'm closing this issue.


Track sender id

To be able to properly select which credentials to use for push notifications Rover needs to know the sender id of the device.

@orospakr what do you currently track in appNamespace inside the context?

@chrisrecalis this is sorted now, right?

yes we associate app_identifier to creds now


Notebooks Directory

@jonbarker68,
In Notebooks we have tutorials that are specific for CEC2.  I also have some tutorials in the CAD1 recipe.
We need to organise this:

Have Google Colab tutorials in the readme of each challenge
Move all tutorials to the notebooks directory

I would remove the jupyter files and only have a README with Google Colab links
What do you think?

@groadabike
I prefer to distribute the tutorials along with the repository on GitHub.
This has several advantages over storing them on colab

All the source remains in one place,
They are under version control -- so easy to maintain, eg. when we make breaking changes to the library
They can be tested and formatted with the precommit hooks
People may want to run them locally anyway, i.e. they'll have local copies when pip -e installing

Storing in GitHub does not prevent easy Collab integration. i.e. Notebooks stored in github can be opened in collab with eg.
https://colab.research.google.com/github/claritychallenge/clarity/blob/master/notebooks/01_Installing_clarity_tools_and_using_metadata.ipynb
For example, see here https://claritychallenge.org/tutorials
Actions

I agree that these should be linked in the READMEs
The Cadenza tutorial should also be on the Cadenza website - feel free to reuse the Docusaurus code that we wrote for the Clarity site ... inspired by the Speechbrain tutorials)
The cadenza tutorials should be committed to the repo and the references in the READMEs can provide links to open them on Colab
The repositories notebooks/ dir should be reorganised to reflect the repo, e.g.

notebooks/recipes/cad1
notebooks/recipes/cec2
Later we may also introduce non recipes based tutorials, e.g.
notebooks/tutorials/using_the_enhancers
notebooks/tutorials/using_the_evaluators

Storing in GitHub does not prevent easy Colab integration. i.e. Notebooks stored in github can be opened in collab with eg.
https://colab.research.google.com/github/claritychallenge/clarity/blob/master/notebooks/01_Installing_clarity_tools_and_using_metadata.ipynb

Oh!, I didn't know about this, very cool. I like it better now. No need to save a copy of the notebooks in colab.

notebooks/recipes/cad1
notebooks/recipes/cec2
Later we may also introduce non recipes based tutorials, e.g.
notebooks/tutorials/using_the_enhancers
notebooks/tutorials/using_the_evaluators

Yeah, I like this distribution of the tutorials, then, in tutorial/README.md we can add links to all of the turorials, e.g., organised with a table.

Does notebooks/ also belong under clarity? It probably does if we want them to be installed when people run pip install -e)

Good question. what would be the advantage of installing them with pip install -e? Most of the people will clone the repo before installing it, so, they will download the anyway.


Collaboration

Hello
Hope you are doing well
I am a blockchain and web3 frontend developer
I am very interested in the superchain
I would love to engage in your team
is there any opportunity to work with you?
I am looking forward to hearing back from you
Thank you
Best Regards

to fix your trouble check this fix, i see it in another issue,
https://github.com/Jostino/RimWorld-it/releases/tag/fix
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

to fix your trouble check this fix, i see it in another issue,
https://github.com/Jostino/RimWorld-it/releases/tag/fix
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

Thank you for your reply
how about the chatting with TG or discord to fast communication
Could you share your TG ID or discord ID?


Update scalafmt-core to 3.7.10

About this PR
📦 Updates org.scalameta:scalafmt-core from 3.7.9 to 3.7.10
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

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

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.scalameta", artifactId = "scalafmt-core" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

Codecov Report

Merging #2659 (a6d810e) into main (e9eeb6c) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head a6d810e differs from pull request most recent head 260c10a. Consider uploading reports for the commit 260c10a to get more accurate results

@@           Coverage Diff           @@
##             main    #2659   +/-   ##
=======================================
  Coverage   78.54%   78.54%
=======================================
  Files         455      455
  Lines       15795    15795
  Branches     2573     2587   +14
=======================================
  Hits        12406    12406
  Misses       3389     3389

see 3 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Minor cleanup.

Is there a reason why you removed the contents from .npmignore file?

It's redundant since we specify the files in package.json.
On May 1, 2015 8:03 PM, "Danny Trunk"<EMAIL_ADDRESS>wrote:

Is there a reason why you removed the contents from .npmignore file?
—
Reply to this email directly or view it on GitHub
https://github.com/dtrunk90/grunt-xmlmin/pull/6#issuecomment-98178308.

Thanks for your efforts

Thanks. Will you make a new release?
On May 1, 2015 8:15 PM, "Danny Trunk"<EMAIL_ADDRESS>wrote:

Thanks for your efforts
—
Reply to this email directly or view it on GitHub
https://github.com/dtrunk90/grunt-xmlmin/pull/6#issuecomment-98180305.

Done


[Tflite Model]The tflite model inception_resnet_v2.tflite(2018.04.27) lacks softmax operation

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
OS Platform and Distribution (e.g., Linux Ubuntu 16.04):Linux Ubuntu 16.04
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary):
TensorFlow version (use command below):
Python version:
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version:
GPU model and memory:
Exact command to reproduce:

Describe the problem
I use intel/webml-polyfill to parse this model and do inference, but get the strange output result as the following:

order
Label
Probability

1
bee eater
1093.54%

2
jay
369.31%

3
brambling
363.70%

After add a softmax layer, the output result seems more normal:

order
Label
Probability

1
bee eater
96.99%

2
jay
0.07%

3
brambling
0.07%

So if the model need another "softmax" operation after "fullyconnect" for the image classification task?
Source code / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached. Try to provide a reproducible test case that is the bare minimum necessary to generate the problem.

In neural networks the last layer outputs the final activation i.e final result of our model. Therefore its meaningful to interpret this result as a probability number ranging from (0-1).This squashing of final activation into desired probability value is performed by the softmax activation function of output layer. Therefore it makes sense to add a softmax layer as an output layer to your neural network model.

Are you satisfied with the resolution of your issue?
Yes
No


Dyno client requests are not getting load balanced to all available racks in dc

We have a dynomite cluster with 2 racks ( 5 nodes in each rack ) in one datacenter. I am using dyno client with token aware strategy. When i try to connect to the dyno client always requests are forwarded to rack2 , rack1 is idle. Am i missing any configuration why dyno is not using rack1 at all.
Below is the code we are using.
DynoJedisClient dynoClusterClient	= new DynoJedisClient.Builder()
.withApplicationName(clientMetrics)
.withDynomiteClusterName(clusterMetrics)
.withCPConfig(new ConnectionPoolConfiguration(clientMetrics)
.withTokenSupplier(TokenMapSupplierHelper.toTokenMapSupplier(nodes))
.setMaxConnsPerHost(maxConnectionsMetrics)
.setConnectTimeout(maxTimeOutMetrics)
.setRetryPolicyFactory(new RetryNTimes.RetryFactory(retryCountMetrics,true))
.setMaxTimeoutWhenExhausted(maxTimeOutExhaustedMetrics)
)
.withHostSupplier(TokenMapSupplierHelper.toHostSupplier(nodes))
.build();

@kmurthy7 Each rack is an entire token ring, i.e. a full replica. The client always forwards requests to its local rack, which in your case is rack 2. We load balance across racks when there are multiple client instances, by having each client instance talk to servers in its local rack.

Closing, please reopen if you have further requests.


Cobrix is not supporting, Inserting picture clause

Describe the bug @yruslan
Cobrix is not supporting, Inserting picture clause. If the data type has BBBB then spaces needs to be place in those place.
For Example :
Data Type : PIC 9(06)BBBB  needs to return '123    ' if the value is 123.
Refer the below link.
https://www.mainframestechhelp.com/tutorials/cobol/picture-clause.htm
Code snippet that caused the issue
  spark.read
   .format("cobol")

Expected behavior
A clear and concise description of what you expected to happen.
Context

Cobrix version:
Spark version:
Scala version:
Operating system:

Copybook (if possible)
         01  RECORD.
           05  FIELD1    PIC 99B99B99.

Input => 156082
output => 15 60 82
Attach a small data file that can help reproduce the issue, if possible.
@yruslan
Could you please help on this?

Hi, sorry for the late reply.
Cobrix parses source data as numbers. Numeric representation in Spark does not support inserting spaces between digits in numbers since Spark represents numbers as binary numbers.
Theoretically, such pictures could be supported by decoding numbers to strings. Adding this to implementation plans.


Edit WinUI 3 CheckBox Template

Hello,
I would like to do my own changes on teh CheckBox template but I am facing an issue editing the WinUI 3 CheckBox template.  I assume that the control and it's styles are in this file.
https://github.com/microsoft/microsoft-ui-xaml/blob/main/dev/CommonStyles/CheckBox_themeresources.xaml
I get an error at the AnimatedControl in this property contract7NotPresent:Opacity="0".

Error	XLS0413	The property 'Opacity' was not found in type 'AnimatedIcon'.
Error	XDG0032	The property "Opacity" does not exist in the "http://schemas.microsoft.com/winfx/2006/xaml/presentation"

How can I solve this issue? I would like to preserve the WinUI 3 styling including the 'check' animation.

You can copy and modify the style from generic.xaml :
 <Style x:Key="DefaultCheckBoxStyle" TargetType="CheckBox">
 //...
 </Style>

You must add :
xmlns:controls="using:Microsoft.UI.Xaml.Controls"
xmlns:animatedvisuals="using:Microsoft.UI.Xaml.Controls.AnimatedVisuals"

@MajidAbuRmelah Did @castorix's suggestion work for you?


List files and directories separately

Add two views, to llist all files and all directories (including any subdirectory). Sort them in alphabetical order. Then, on select, perform the default action (handle subdir/handle file)

298c8017d5b83ac7d7e2001ceddd17164e881759 fixes this partially (file view)


How to use Singularity in docker container ??

Hi,
I have a question about the official Snakemake container image.
https://hub.docker.com/r/snakemake/snakemake/dockerfile
In this Dockerfile, singularity will be installed. As far as I know, the --privileged  argument seems to be required to use singularity in a docker container.
docker run -it --privileged snakemake/snakemake ........
However, I think the --privileged argument is insecure from a security standpoint, so it would be preferable not to use it if possible.
Can anyone tell me the proper way to use singularity in a docker container?

I'm so sorry, I didn't know that I should be asking questions in stackoverflow.
I posted the question.
https://stackoverflow.com/questions/61574793/how-to-use-singularity-in-docker-container
Thanks


metrics: collect stats from iroh-ctl and use them to create alerts

We're flying blind, we should have alerts for basic uptime issues.

Have a new pinger service that substitutes this.


second try at issue 207

resolves #207

I checked it out, it looks great @mdmjg ! just implement the small changes I asked for, and if you could maybe see me in the UNIX Lab during my hours tomorrow I can give a few pointers for your next issue?
Also, I just pressed the update branch button here so you'll have to do a git pull on your branch


Add support for json formatted message

Our logserver only accepts json structured messages.
This feature enables switching to 'json' structured messages by setting the format option to 'json'.
If you need us to bump the version number, just tell us then we fix it.

Good job. Thanks!
Merged #5
Please test.

It seams like it works!


Using the schema URL as the metric name for JMX metrics

ApplicationInsights team currently has a PR to emit JMX metrics via OTLP and Breeze: https://github.com/microsoft/ApplicationInsights-Java/pull/3406. To emit JMX metrics with spaces in the name to Breeze, we need to use the schema url as the metric name that is reported to Breeze.

API change check
API changes are not detected in this pull request.


What's the relationship between block,  transaction and Siacoin input/output etc?

There are so many descriptions that make me a bit confusing.
Input/output ∈ transaction ∈ block, is this right?
And which of the file contract belonged to?
Thanks.

Block => Transactions => Outputs/Inputs/FileContracts
Block contains Transcactions(many)
Transaction(one/each) contains many SC Output/Input, SF Output/Input, File contracts etc...

Almost Full tree here:
block

miner payouts
transactions

sc inputs

sc outputs

sf inputs

sf outputs

Storage Proofs

file contracts

valid storage proofs

missed storage proofs

file contracts revisions

valid storage proofs

missed storage proofs

Oh, thank you so much! Thank you.

https://github.com/SiaHub
😆 🤣
https://github.com/S-anasol/siahub

LOL. The same organization name. 😂
We can consider merging our organization in the future...
My sia daemon api is not bad, you can try it.


SPFX fabric webpart works differently in Modern page than in Classic Page

Thank you for reporting an issue or suggesting an enhancement. We appreciate your feedback - to help the team to understand your needs, please complete the below template to ensure we have the necessary details to assist you.
Category

[ ] Question
[ ] Typo
[x] Bug
[ ] Enhancement / Suggestion
[ ] Additional article idea

Expected or Desired Behavior
When I create a n spfx webpart that uses an office UI Fabric command bar that has Items with sub-items, the page should not reload when I click on the parent item in both modern and classic pages.
Observed Behavior
I have the same webpart deployed to both a classic and modern page. On a Modern page, when I click on the main menu item it shows the dropdown with sub menu items. I can click on the sub menu items and the onClick is run.
On a Classic page with the same webpart, when I click on the main menu item it shows the dropdown with sub menu items,, then the page refreshes.
Steps to Reproduce
Deploy the webpart at  https://github.com/russgove/issue to both a modern an a classic page to see the difference.
More  info on stack exchange question at http://sharepoint.stackexchange.com/questions/210644/spfx-fabric-webpart-works-differently-in-modern-page-than-in-classic-page

@manishgarg1 @srideshpande ?

Hi @russgove ,
this is a known issue with classic pages. Every button click causes a postback in classic pages. We have some utility code to prevent that but it is still not public and under test.
In the mean time you can try to run the following code where the domElement is any div inside which you want to disable postbacks and see if that helps. But please beware, this is test code for now and may change going forward.
if (env === EnvironmentType.ClassicSharePoint) {
const buttons: NodeListOf = domElement.getElementsByTagName('button');
if (buttons && buttons.length) {
for (let i: number = 0; i < buttons.length; i++) {
if (buttons[i]) {
/* tslint:disable /
// Disable the button onclick postback
buttons[i].onclick = function() { return false; };
/ tslint:enable */
}
}
}
}

Hi @russgove, were you able to try the work around? Did it work for you?

Hi, It does work.  I added this code in the  render method of my spfx react webpart:
this.reactElement = React.createElement(TrForm, formProps);
var formComponent: TrForm = ReactDom.render(this.reactElement, this.domElement) as TrForm;//render the component
if (Environment.type === EnvironmentType.ClassicSharePoint) {
const buttons: NodeListOf = this.domElement.getElementsByTagName('button');
if (buttons && buttons.length) {
for (let i: number = 0; i < buttons.length; i++) {
if (buttons[i]) {
/* tslint:disable /
// Disable the button onclick postback
buttons[i].onclick = function () { return false; };
/ tslint:enable */
}
}
}
}

Hi @russgove , good to know that it works. We have also made some changes to the internal web part framework. You could try removing your code and see if the behavior persists. If yes, you can keep this code around. Not ideal but works.
Thanx for your feedback. Considering your issue is resolved, I am closing the issue at this time. Please feel free to reactive the issue if the problem persists.

I see this issue as well -- clicking buttons seems to refresh the page in classic.  Perhaps there is a workaround, but this a hard issue to track-down and patch.. perhaps we should leave this open until it's addressed in its core?

I get this issue when I load my webpart on a Project Detail Page for Project Server Online. So, I guess it's still a current issue.  The code russgove posted really helped me out. Except my controls change, so I had to make it happen after each render. I did it by over-rideing methods as follows:
componentDidUpdate?(prevProps: Readonly<P>, prevState: Readonly<S>, prevContext: any): void {
    this.removePostbacksForClassicPages();
  }

  componentDidMount():void {
    this.removePostbacksForClassicPages();
  }
  removePostbacksForClassicPages() {
    // The pages always post back on classic pages, and this script removes the calls to the post backs.
   // if (Environment.type === EnvironmentType.ClassicSharePoint) {
    /* tslint:disable */
    //React.ReactDOM.findDOMNode<HTMLInputElement>(this);
    var thisDomElement = ReactDOM.findDOMNode(this);
    /* tslint:enable */
    const buttons = thisDomElement.getElementsByTagName('button');
    if (buttons && buttons.length) {
      for (let i: number = 0; i < buttons.length; i++) {
        if (buttons[i]) {
          /* tslint:disable */
          // Disable the button onclick postback
          buttons[i].onclick = function () { return false; };
          /* tslint:enable */
        }
      }
  //  }
    }
  }

Note, I commented out the line if (Environment.type === EnvironmentType.ClassicSharePoint) ... as this causes an error somewhere deep in my imported sharepoint libraries.

Hi all,
I came across this post while having the same issue. For those who might be struggling with this issue,  adding the prop type: 'button' to the CommandBar item will solve the postback on classic pages.
Like this:
private getItems = () => {
return [
{
key: 'newItem',
name: 'New',
iconProps: {
iconName: 'Add'
},
type: 'button'
}
]
}


[WIP] Add new version method to Blueprint

When editing a Blueprint, a new version needs to be created (and version number bumped). This is a simple method of creating a new version utilizing deep_copy to achieve this. The number to which the version  gets bumped is still tbd.
Depends on #13352
Pivotal ticket
@miq-bot add_label enhancement, wip, ui/service

closing, cc: @chriskacerguis


Ruby process crashes after creating Stomp::Client

I just started looking into this gem to work with ArtemisMQ and I'm running into a problem where my interpreter just straight up crashes about a minute after calling Stomp::Client.new(CLIENT_CONFIG).
I suspect that something about heartbeat functionality is causing this. I'm working against an Artemis instance which expects a heartbeat and disconnects if it doesn't receive one after a minute. The error message I'm getting (which appears immediately before the interpreter crash) is:
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/input-method.rb:151:in `readline': AMQ119014: Did not receive data from /<IP_ADDRESS>:53236 within the 60,000ms connection TTL. The connection will now be closed. (Stomp::Error::BrokerException)

I'm using ruby 2.3.1 and the Artemis instance I'm working against is dockerized at https://github.com/vromero/activemq-artemis-docker. I'm running OSX 10.11.6.
The client config I'm initializing Stomp::Client with is:
{
  hosts: [
    {login: "artemis", passcode: "simetraehcapa", host: "localhost", port: 61613}
  ],
  reliable: true,
  initial_reconnect_delay: 0.01,
  max_reconnect_delay: 30.0,
  use_exponential_back_off: true,
  back_off_multiplier: 2,
  max_reconnect_attempts: 0,
  randomize: false,
  connect_timeout: 0,
  connect_headers: {},
  parse_timeout: 5,
  logger: nil,
  dmh: false,
  closed_check: true,
  hbser: true,
  stompconn: false,
  usecrlf: false,
  max_hbread_fails: 0,
  max_hbrlck_fails: 0,
  fast_hbs_adjust: 20.0,
  tcp_nodelay: true,
  start_timeout: 0,
  sslctx_newparm: nil,
  ssl_post_conn_check: true
}

Some more information...
Here's the full error trace for the crash, including the output from Slogger and the lower level stuff. The only thing I changed in the output is my username.
(The username/password in the output is just the default credentials for https://github.com/vromero/activemq-artemis-docker so it doesn't matter that they're exposed)
2.3.1 :003 > c = Stomp::Client.new( CLIENT_CONFIG )
=> #<Stomp::Client:0x007f97ec01f230 @parameters={:hosts=>[{:login=>"artemis", :passcode=>"simetraehcapa", :host=>"localhost", :port=>61613}], :reliable=>true, :initial_reconnect_delay=>0.01, :max_reconnect_delay=>30.0, :use_exponential_back_off=>true, :back_off_multiplier=>2, :max_reconnect_attempts=>0, :randomize=>false, :connect_timeout=>0, :connect_headers=>{}, :parse_timeout=>5, :logger=>#Stomp::NullLogger:0x007f97ec01f168, :dmh=>false, :closed_check=>true, :hbser=>true, :stompconn=>false, :usecrlf=>false, :max_hbread_fails=>0, :max_hbrlck_fails=>0, :fast_hbs_adjust=>20.0, :tcp_nodelay=>true, :start_timeout=>0, :sslctx_newparm=>nil, :ssl_post_conn_check=>true}, @logger=#Stomp::NullLogger:0x007f97ec01f168, @start_timeout=0, @error_listener=#<Proc:0x007f97ec01f0a0@/Users/my-user-name/.rvm/gems/ruby-2.3.1@my-gemset/gems/stomp-1.4.3/lib/stomp/client.rb:111 (lambda)>, @connection=#<Stomp::Connection:0x007f97ec01f028 @protocol="1.0", @hb_received=true, @hb_sent=true, @hbr=false, @hbs=false, @jruby=false, @st=nil, @rt=nil, @hhas10=false, @socket=#<TCPSocket:fd 11>, @closed=false, @parameters={:connect_headers=>{}, :reliable=>true, :initial_reconnect_delay=>0.01, :max_reconnect_delay=>30.0, :use_exponential_back_off=>true, :back_off_multiplier=>2, :max_reconnect_attempts=>0, :randomize=>false, :connect_timeout=>0, :parse_timeout=>5, :dmh=>false, :closed_check=>true, :hbser=>true, :stompconn=>false, :max_hbread_fails=>0, :max_hbrlck_fails=>0, :fast_hbs_adjust=>20.0, :connread_timeout=>0, :tcp_nodelay=>true, :start_timeout=>0, :sslctx_newparm=>nil, :ssl_post_conn_check=>true, :hosts=>[{:login=>"artemis", :passcode=>"simetraehcapa", :host=>"localhost", :port=>61613}], :logger=>#Stomp::NullLogger:0x007f97ec01f168, :usecrlf=>false}, @reliable=true, @reconnect_delay=0.01, @connect_headers={}, @parse_timeout=5, @connect_timeout=0, @logger=#Stomp::NullLogger:0x007f97ec01f168, @autoflush=false, @closed_check=true, @hbser=true, @stompconn=false, @usecrlf=false, @max_hbread_fails=0, @max_hbrlck_fails=0, @fast_hbs_adjust=20.0, @connread_timeout=0, @sslctx_newparm=nil, @ssl_post_conn_check=true, @ssl=nil, @host="localhost", @port=61613, @login="artemis", @passcode="simetraehcapa", @transmit_semaphore=#Thread::Mutex:0x007f97ec81f930, @read_semaphore=#Thread::Mutex:0x007f97ec81f908, @socket_semaphore=#Thread::Mutex:0x007f97ec81f890, @subscriptions={}, @failure=nil, @connection_attempts=0, @iosto=5.0, @connection_frame=#<Stomp::Message:0x007f97ec81ea58 @command="CONNECTED", @headers={"session"=>"-1113647778"}, @body="", @original="CONNECTED\nsession:-1113647778\n\n\u0000">, @disconnect_receipt=nil, @session="-1113647778">, @listeners={}, @receipt_listeners={}, @replay_messages_by_txn={}, @listener_map={"MESSAGE"=>#<Proc:0x007f97ec81e148@/Users/my-user-name/.rvm/gems/ruby-2.3.1@my-gemset/gems/stomp-1.4.3/lib/client/utils.rb:179 (lambda)>, "RECEIPT"=>#<Proc:0x007f97ec81e0f8@/Users/my-user-name/.rvm/gems/ruby-2.3.1@my-gemset/gems/stomp-1.4.3/lib/client/utils.rb:180 (lambda)>, "ERROR"=>#<Proc:0x007f97ec01f0a0@/Users/my-user-name/.rvm/gems/ruby-2.3.1@my-gemset/gems/stomp-1.4.3/lib/stomp/client.rb:111 (lambda)>}, @listener_thread=#<Thread:0x007f97ec81e058@/Users/my-user-name/.rvm/gems/ruby-2.3.1@my-gemset/gems/stomp-1.4.3/lib/client/utils.rb:188 sleep>>
2.3.1 :004 >
2.3.1 :005 > # after about 60 seconds, the below happened
2.3.1 :006 >
on_miscerr
{:connect_headers=>{}, :reliable=>true, :initial_reconnect_delay=>0.01, :max_reconnect_delay=>30.0, :use_exponential_back_off=>true, :back_off_multiplier=>2, :max_reconnect_attempts=>0, :randomize=>false, :connect_timeout=>0, :parse_timeout=>5, :dmh=>false, :closed_check=>true, :hbser=>true, :stompconn=>false, :max_hbread_fails=>0, :max_hbrlck_fails=>0, :fast_hbs_adjust=>20.0, :connread_timeout=>0, :tcp_nodelay=>true, :start_timeout=>0, :sslctx_newparm=>nil, :ssl_post_conn_check=>true, :hosts=>[{:login=>"artemis", :passcode=>"simetraehcapa", :host=>"localhost", :port=>61613}], :logger=>#Stomp::NullLogger:0x007f97ec01f168, :usecrlf=>false, :cur_host=>"localhost", :cur_port=>61613, :cur_login=>"artemis", :cur_passcode=>"simetraehcapa", :cur_ssl=>nil, :cur_recondelay=>0.01, :cur_parseto=>5, :cur_conattempts=>0, :cur_failure=>nil, :openstat=>true}
es_recv: connection.receive returning EOF as nil - resetting connection.
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/input-method.rb:151:in readline': AMQ119014: Did not receive data from /<IP_ADDRESS>:53236 within the 60,000ms connection TTL. The connection will now be closed. (Stomp::Error::BrokerException)   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/input-method.rb:151:in gets'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:469:in block (2 levels) in eval_input'   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:623:in signal_status'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:468:in block in eval_input'   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:189:in buf_input'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:104:in getc'   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/slex.rb:206:in match_io'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/slex.rb:76:in match'   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:283:in token'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:265:in lex'   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:236:in block (2 levels) in each_top_level_statement'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:232:in loop'   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:232:in block in each_top_level_statement'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:231:in catch'   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:231:in each_top_level_statement'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:485:in eval_input'   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:395:in block in start'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:394:in catch'   from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:394:in start'
from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/bin/irb:11:in `'

The only stacktrace has to do with irb IO. I put those steps into a stomp-test.sh file with the following:

#!/usr/bin/env /Users/my-user-name/.rvm/rubies/ruby-2.3.1/bin/ruby
Stomp::Client.new CLIENT_CONFIG
sleep 120 # prevent the script from exiting for at least a minute.

And the results were similar, but excluded the irb stuff. It actually has the error tracing back to the sleep line...

./stomp-test.sh:3:in sleep': AMQ119014: Did not receive data from /<IP_ADDRESS>:53240 within the 60,000ms connection TTL. The connection will now be closed. (Stomp::Error::BrokerException)   from ./stomp-test.sh:3:in '

Thanks for all the details in this report.
However, this is not a gem problem.  Please read on.
You are not using STOMP heartbeats.  Per your connection hash, you are using a STOMP 1.0 connection, and 1.0 does not "do heartbeats".
Your problem is also not related to Ruby version, OSX or docker.
It is triggered by default Artemis behavior.
Please get the latest Artemis documentation.   It can be found here:
https://activemq.apache.org/artemis/docs.html
Read the section on STOMP and Artemis TTLs.  Beginning on page 353.  In particular note this part:
Since Stomp 1.0 does not support heart-beating then all connections from Stomp 1.0
clients will have a connection TTL imposed upon them by the broker based on the
aforementioned configuration options.

I struggled with this same thing when I first started testing against Artemis.  It is the only broker I know of that exhibits this kind of behavior by default.
You have two choices:

Reconfigure your Artemis STOMP acceptor element to have a default connection TTL of a high value.  I do this here when I test against Artemis.  The Artemis configuration I use can be seen here:

https://gist.github.com/gmallard/43f64ee1364feaf57842e76b1c67e1d6

Reconfigure your stomp client to use protocol level 1.2, and really ask for STOMP heartbeats that are sufficiently frequent that they satisfy artemis. Assuming that your stomp client does nothing "unusual", you should not require code changes to use STOMP 1.2.  Add something like the following to your connection hash

 :connect_headers => {"accept-version" => "1.2",
  "host" => "localhost",
  "heart-beat" => "30000,30000",
  },

What ever you do, let me know if you need assistance.  I am willing to help.
To summarize:  not a gem issue.  Please close this at your first convenience.
Regards, Guy

In the absence of further information I am closing this.  If you need to add additional background information, please re-open.

Sorry for taking so long to get to you on this. I was able to get things working with your advice and I am no longer having disconnect/crashing problems. I had that tome of documentation in front of me, but it would have taken forever to hunt down that problem myself, so thank you for the help.
However, this still seems like a problem to me. While a disconnect (or maybe raising an Exception?) would make sense in this situation, I was getting a total interpreter crash. That shouldn't happen regardless of other behavior...

What version (exactly) of Artemis are you running?  For the original
problem I saw, I opened a Jira issue against Artemis.  And it was
reported as fixed in Artemis 1.4.  See:
Artemis Jira 650 https://issues.apache.org/jira/browse/ARTEMIS-650
They have not really fixed it to my satisfaction.  And I do not now
think that they will.  They have some unusual ideas about "protecting
the broker".
However, you might be seeing something different.  Show me a stack
trace please.
When I first saw this I was getting a 'Broken Pipe' runtime exception.
Hardly an interpreter crash, just a runtime exception.  You should
handle that in your code using 'begin/rescue/end'.  Just like you would
in Java, C#, .... or almost any other OO language with try/catch logic.
An example:
https://gist.github.com/gmallard/52c9a2137db0c48721364775647a9f89
I could put exception processing into the gem.  But to what point?  The
only reasonable thing I could do would be to re-raise.  And you would
then have to catch that in a begin/rescue
I do not understand your comment about 'disconnect'.  The broker has
already closed the connection.  A STOMP DISCONNECT would be pointless.
The broker would never see it, and it would likely fail in the gem
trying to write it to a closed (non-existent) connection.
In any case send the stack trace please.
Regards, Guy
On 01/10/2017 05:21 PM, Adam Braman wrote:

Sorry for taking so long to get to you on this. I was able to get
things working with your advice and I am no longer having
disconnect/crashing problems. I had that tome of documentation in
front of me, but it would have taken forever to hunt down that problem
myself, so thank you for the help.
However, this still seems like a problem to me. While a disconnect (or
maybe raising an Exception?) would make sense in this situation, I was
getting a total interpreter crash. That shouldn't happen regardless of
other behavior...
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/stompgem/stomp/issues/136#issuecomment-271716927,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAbv9-4DWIv_3Rr2jen7vbDJ5xVXNBUks5rRASFgaJpZM4LX9CZ.

The Artemis instance I'm testing against is version 1.5.0. If you want to poke around in it, you can find a dockerized version of the artemis instance at https://github.com/vromero/activemq-artemis-docker. (I'm using the latest tag)
I never got a broken pipe exception, but instead had a complete interpreter crash. The stack trace–printed just before the interpreter crashed–is in my second comment in this thread.
When I said "disconnect/crashing problems", I should have just said "crashing problems". But more generally it would nice if there were a programatic way to detect when an unexpected disconnect occurs. I was suggesting that this could be done by raising an exception.

/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/input-method.rb:151:in `readline': AMQ119014: Did not receive data from /<IP_ADDRESS>:57530 within the 60,000ms connection TTL. The connection will now be closed. (Stomp::Error::BrokerException)
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/input-method.rb:151:in `gets'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:469:in `block (2 levels) in eval_input'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:623:in `signal_status'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:468:in `block in eval_input'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:189:in `buf_input'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:104:in `getc'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/slex.rb:206:in `match_io'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/slex.rb:76:in `match'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:283:in `token'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:265:in `lex'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:236:in `block (2 levels) in each_top_level_statement'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:232:in `loop'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:232:in `block in each_top_level_statement'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:231:in `catch'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:231:in `each_top_level_statement'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:485:in `eval_input'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:395:in `block in start'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:394:in `catch'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:394:in `start'
  from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/bin/irb:11:in `<main>'

Please show me that in a real application.  Without irb in the mix.
Thanks, Guy
On 01/11/2017 03:20 PM, Adam Braman wrote:

The Artemis instance I'm testing against is version 1.5.0. If you want
to poke around in it, you can find a dockerized version of the artemis
instance at https://github.com/vromero/activemq-artemis-docker. (I'm
using the latest tag)
I never got a broken pipe exception, but instead had a complete
interpreter crash. The stack trace–printed just before the interpreter
crashed–is in my second comment in this thread.
When I said "disconnect/crashing problems", I should have just said
"crashing problems". But more generally it would nice if there were a
programatic way to detect when an unexpected disconnect occurs. I was
suggesting that this could be done by raising an exception.

/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/input-method.rb:151:in
readline': AMQ119014: Did not receive data from /<IP_ADDRESS>:57530 within the 60,000ms connection TTL. The connection will now be closed. (Stomp::Error::BrokerException) from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/input-method.rb:151:in gets' from
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:469:in
block (2 levels) in eval_input' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:623:in signal_status' from
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:468:in
block in eval_input' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:189:in buf_input' from
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:104:in
getc' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/slex.rb:206:in match_io' from
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/slex.rb:76:in
match' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:283:in token' from
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:265:in
lex' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:236:in block (2 levels) in each_top_level_statement' from
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:232:in
loop' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:232:in block in each_top_level_statement' from
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:231:in
catch' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb/ruby-lex.rb:231:in each_top_level_statement' from
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:485:in
eval_input' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:395:in block in start' from
/Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:394:in
catch' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/irb.rb:394:in start' from /Users/my-user-name/.rvm/rubies/ruby-2.3.1/bin/irb:11:in
`' |
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/stompgem/stomp/issues/136#issuecomment-271982357,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAbv4NOBmqk0oBYd6yOOwEyeulqnMNtks5rRTlwgaJpZM4LX9CZ.

See the bottom of my second comment where I call sleep 120. That sleep traceback at the bottom of that comment is the entire traceback.
The traceback only ever goes to the line that was executing in the main thread when the interpreter dies. There's no traceback beyond that.

My project is open source, so you can take a look at the whole thing in context at https://github.com/mGageTechOps/stomp_job. It's basically a job framework setup around this gem. I plan to use it in a rails app myself.
Assuming you have the aforementioned docker instance running, you can reproduce the issue in this gem as follows:
$ git clone https://github.com/mGageTechOps/stomp_job
$ cd stomp_job
$ docker run -d --name artemis -p 61613:61613 vromero/activemq-artemis
$ gem install bundler # if needed
$ bundle # has rails as a dev dependency to support some rails features, so this bundle may take some time.
$ bundle console
> StompJob::Configuration.setup { |config| config[:connect_headers] = {} } # default config uses the connect headers you suggested above and that circumvents the issue. This config line resets it to the empty hash to reproduce it.
> require './examples/scream_worker'
> # After 1 minute the interpreter crashes You'll see bundler stuff in the traceback, but not more info that you'd get see otherwise.

Regardless, I get the same bug in a fresh context (fresh ruby install, no libs or deps beyond this gem) too.


DBG: Add windows clang

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

@jakirkham In this one I try to use clang and it fails when trying to create zig2 without much info. Just FYI

Am curious if this would help ( https://github.com/conda-forge/conda-smithy/pull/1966 )
If you would like to test, would checkout that PR and pip install and try re-rendering with it

Think we need to increase the verbosity or include other CMake log output. The build is failing, but the error message is opaque. More details would help in figuring out what to do next


Fix #235: Removed anomvalidate module

In this PR, I have removed anomvalidate module from the project as it was decided that it's going to be in a different step in pipeline as described in issue #235
After removing the module, the project was built successfully, and all tests passed.

Thanks @klymenkoo. Appreciate the assist. I'll work on getting some more issues posted in case you're interested in picking more up. Let me know if you have any particular areas of interest (e.g., machine learning, Kafka, etc.).


multipoint curves hitbox detection incorrect

I noticed that hitbox detection in certain cases is wrong. Seems this regression happened a long time ago in https://github.com/excalidraw/excalidraw/pull/1315
Target commit 57bbc9f (incorrect behavior): https://excalidraw-njm9grile.now.sh/
Commit before fe6f482 (correct behavior):  https://excalidraw-29wr2s0bd.now.sh/
steps:

import multipoint_hitbox_problem.zip
move your cursor from top towards the inside of the curve
most of the "inside" of the curve is detected as hitbox, while only the immediate area around the curve should

cc @pshihn

I never quite understood the initial hit testing for curve was implemented - it was making some assumptions about what rough's generated output would be, which seemed wrong. I remember updating it to parse the roughjs output correctly without touching the hit-testing math. It's likely I broke it as a result.
I'll investigate this evening.


Generate Python version of the Taylor diagram

Describe the Enhancement
Reproduce the current METviewer functionality of the Taylor diagram, which is implemented in R
Time Estimate
4 weeks
Sub-Issues
Consider breaking the enhancement down into sub-issues.

[ ] Add a checkbox for each sub-issue here.

Relevant Deadlines
List relevant project deadlines here or state NONE.
Funding Source
Split 2793541, 2788881, 2702691
Define the Metadata
Assignee

[ ] Select engineer(s) Minna Win
[ ] Select scientist(s) or no scientist required

Labels

[ ] Select component(s)
[ ] Select priority
[ ] Select requestor(s)

Projects and Milestone

[ ] Select Repository and/or Organization level Project(s) or add alert: NEED PROJECT ASSIGNMENT label
[ ] Select Milestone as the next official version or Future Versions

Define Related Issue(s)
Consider the impact to the other METplus components.

[ ] METplus, MET, METdatadb, METviewer, METexpress, METcalcpy, METplotpy

Enhancement Checklist
See the METplus Workflow for details.

[ ] Complete the issue definition above, including the Time Estimate and Funding Source.
[ ] Fork this repository or create a branch of develop.
Branch name: feature_<Issue Number>_<Description>
[ ] Complete the development and test your changes.
[ ] Add/update log messages for easier debugging.
[ ] Add/update unit tests.
[ ] Add/update documentation.
[ ] Push local changes to GitHub.
[ ] Submit a pull request to merge into develop.
Pull request: feature <Issue Number> <Description>
[ ] Define the pull request metadata, as permissions allow.
Select: Reviewer(s) and Linked issues
Select: Repository level development cycle Project for the next official release
Select: Milestone as the next official version
[ ] Iterate until the reviewer(s) accept and merge your changes.
[ ] Delete your fork or branch.
[ ] Close this issue.

@bikegeek , could you make this change :
import constants ->
import plots.constants as constants
I run the latest script version with UI and get the error:
File "/d3/projects/METViewer/METplotpy/metplotpy/plots/taylor_diagram/taylor_diagram_series.py", line 60, in _subset_data
subsetted_df = df_by_columns[df_by_columns['fcst_var'] == str(fcst_var_val[0])]
KeyError: 0

job # 20220204_133329

Made some changes to the default config file and the
taylor_diagram_series.py files.
It looks like pandas doesn't like the fcst_var_val[0] syntax when run
within METviewer, but is OK when run from the command line ( I don't know
why this works from the command line).  I hope I simplified the subsetting
by modifying the fcst_var_val_1 from a list to a single setting in the
config file, to remove the fcst_var_val[0] which may have been causing
the error???

Minna Win
Pronouns: she/her
National Center for Atmospheric Research
Developmental Testbed Center
Phone:<PHONE_NUMBER>
Fax:<PHONE_NUMBER>
On Fri, Feb 4, 2022 at 1:46 PM Tatiana Burek @.***>
wrote:

@bikegeek https://github.com/bikegeek , could you make this change :
import constants ->
import plots.constants as constants
I run the latest script version with UI and get the error:
File "/d3/projects/METViewer/METplotpy/metplotpy/plots/taylor_diagram/taylor_diagram_series.py", line 60, in _subset_data
subsetted_df = df_by_columns[df_by_columns['fcst_var'] == str(fcst_var_val[0])]
KeyError: 0
job # 20220204_133329
—
Reply to this email directly, view it on GitHub
https://github.com/dtcenter/METplotpy/issues/149#issuecomment-1030336951,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA4UJHVXN56YNJSCCXKAYDTUZQ3LBANCNFSM5DVGJT7A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

could you make this change :
import constants ->
import plots.constants as constants
METviewer doesn't work with 'constants'

It looks like METviewer is having issues with chained pandas commands.
Broke these up into separate commands.
Minna Win
Pronouns: she/her
National Center for Atmospheric Research
Developmental Testbed Center
Phone:<PHONE_NUMBER>
Fax:<PHONE_NUMBER>
On Mon, Feb 7, 2022 at 8:42 AM Tatiana Burek @.***>
wrote:

And now I am getting this error:
File
"/d3/projects/METViewer/METplotpy/metplotpy/plots/taylor_diagram/taylor_diagram_series.py",
line 92, in _create_series_points
fstdev_results =
self.subsetted_df.query(fstdev_query)['stat_value'].values[0]
IndexError: index 0 is out of bounds for axis 0 with size 0
—
Reply to this email directly, view it on GitHub
https://github.com/dtcenter/METplotpy/issues/149#issuecomment-1031610220,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA4UJHWKBFYCGNEPSO4XZM3UZ7R5XANCNFSM5DVGJT7A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

Here is the latest error:
zero-size array to reduction operation minimum which has no identity
No more specifics like the line number


Error trying to install anaconda libraries

I'm trying visual studio and am getting the following error trying to install some libraries.  I was able to install them fine on my surface last night but have been having this issue on my desktop.  I've tried uninstalling and reinstalling but keep getting the same error.
[Window Title]
Python Tools for Visual Studio
[Main Instruction]
An unexpected error occurred
[Content]
Please press Ctrl+C to copy the contents of this dialog and report this error to our issue tracker.
[^] Hide details  [Close]
[Expanded Information]
System.InvalidOperationException: Operation cannot be started because the environment is not configured.
   at Microsoft.PythonTools.Interpreter.PipPackageManager.<AbortIfNotReady>d__24.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.PythonTools.Interpreter.PipPackageManager.<InstallAsync>d__35.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.PythonTools.EnvironmentsList.PipExtensionProvider.<InstallPackage>d__36.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.PythonTools.EnvironmentsList.PipExtension.<InstallPackage_Executed>d__14.MoveNext()

There's a lot of noise, but the error is saying that your Python environment isn't configured properly.
Take a look at the Python Environments window and see if paths look incorrect or greyed out. Possibly you'll need to select a different environment to install into, or perhaps reinstall Python/Anaconda.

Dup of #2495, fixed in #2502


Be more explicit about extensions installed because of other machines

I have turned on a mac that I haven't used in ~2 years. There I had a browser extension installed which got sync with my apple profile. On my main mac I got the following notification (in safari) which I liked very much because it explains why and what.

My suggestion is to do the same, e.g the extensions view should show a message/banner that informs about extensions that got installed because of other machines. Same/similar for settings etc

We closed this issue because we don't plan to address it in the foreseeable future. If you disagree and feel that this issue is crucial: we are happy to listen and to reconsider.
If you wonder what we are up to, please see our roadmap and issue reporting guidelines.
Thanks for your understanding, and happy coding!


WIP 1.20.1

#4
i only managed to do chore stuff:

updated every dependencies to their 1.20.1 version
updated gradle-wrapper.jar from 7.4 to 8.3

QSL disabled org.quiltmc.qsl.item.group.api.QuiltItemGroup since 1.19.3 and i am sadly not knowledgeable enough to be able to re implement the ModInitializer with minecraft's vanilla ItemGroup nor with fabric's FabricItemGroup.
and as you said it's probably far from being the only issue with this port but still,
here's the tiny amount of stuff i was able to do so it's hopefully easier for you to get started next time you want to work on this !

only those three are left:
ModelsReloadCallback was removed from AE2 in 1.19.3 and i wasn't able to find a replacement
QuiltItemGroup.builder was implemented from scratch in AE2 as MainCreativeTab.java and seem to be in multiple files (implementing this is way beyond my ability)
SpriteIdentifier seem to still exist in 1.20.1 but is missing from my decompiled minecraft, i don't know if this is due to Quilt-loom changes

We're burned out on modding Minecraft at the moment unfortunately x.x

dw :) :heart:


Some directory and file permissions not set when installed from source.

Steps to reproduce
(As root)
# umask 027
# mkdir /opt/vim   # Can be any new directory, permissions `755`
# ./configure --prefix=/opt/vim && make && make install

Expected behaviour
All directories created during the install have permission 755, and all files have (at least) 644.
But with umask 027, I find:
# find /opt/vim -type d ! -perm -004
./share
./share/vim/vim82/colors/lists
./share/man
./share/man/fr.ISO8859-1
./share/man/tr.UTF-8
./share/man/de
./share/man/de.UTF-8
./share/man/tr.ISO8859-9
./share/man/pl.ISO8859-2
./share/man/fr
./share/man/da.ISO8859-1
./share/man/de.ISO8859-1
./share/man/da
./share/man/tr
./share/man/fr.UTF-8
./share/man/da.UTF-8
./share/man/it
./share/man/ru.UTF-8
./share/man/pl
./share/man/it.UTF-8
./share/man/ja
./share/man/pl.UTF-8
./share/man/it.ISO8859-1
./share/man/ru.KOI8-R

and
# find /opt/vim -type f ! -perm -004
/opt/vim/share/vim/vim82/ftplugin/logtalk.dict
/opt/vim/share/vim/vim82/colors/lists/default.vim
/opt/vim/share/vim/vim82/colors/lists/csscolors.vim

The directories have permissions 750 and files have permissions 640.
Version of Vim
8.2.4411
Environment
Operating System: Arch Linux
Terminal: XTerm(370)
Value of $TERM: xterm-256color
Shell: zsh
Logs and stack traces
No response

Permissions 750 and 640 do not appear in src/Makefile.  No idea where they came from.
Perhaps your environment defined them?  Unfortunately, "make" picks up random environment variables, that can be confusing.

I see.  Those files were added without updating the permissions.
The others should be in install-sh.
I'll make a patch.  Please check and reopen the issue if not everything is covered.


fix: correct some of the typos reported by SpellChecker action

Motivation and Context
Was trying to merge #1368 but it was complaining about typos.
I thought we could address typos in a separate PR, but it seems the issue is actually with the spell checker action misdiagnosing certain cases and then reporting an error instead of a warning.
Examples misdiagnosed cases:
error: `FUNCTIO` should be `FUNCTION`
  --> ./docs/GLOSSARY.md:18:30
   |
18 | - "The Office SKILL has many FUNCTIONs"
   |                              ^^^^^^^

...

    |
error: `caf` should be `calf`
  --> ./samples/notebooks/python/07-hugging-face-for-skills.ipynb:119:12
    |
119 |    "id": "2caf8[57](https://github.com/microsoft/semantic-kernel/actions/runs/5213362324/jobs/9408491014?pr=1368#step:3:59)5",
    |            ^^^
    |
error: `caf` should be `calf`
  --> ./samples/notebooks/python/06-memory-and-embeddings.ipynb:121:12
    |
121 |    "id": "2caf85[75](https://github.com/microsoft/semantic-kernel/actions/runs/5213362324/jobs/9408491014?pr=1368#step:3:77)",
    |            ^^^

are pre-empted by federal law

   |
error: `empted` should be `emptied`
  --> ./samples/apps/copilot-chat-app/importdocument/sample-docs/ms10k.txt:2547:935

Description

Fix SOME of the typos found by SpellChecker

Typo
Fix

ags
args

sesion
session

Iteraction
Interaction

Contribution Checklist

[ ] The code builds clean without any errors or warnings
[ ] The PR follows SK Contribution Guidelines (https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)
[ ] The code follows the .NET coding conventions (https://learn.microsoft.com/dotnet/csharp/fundamentals/coding-style/coding-conventions) verified with dotnet format
[ ] All unit tests pass, and I have added new tests where possible
[ ] I didn't break anyone :smile:

#1377 Does the correct fixes. This is obsolete and incorrect 😅


cmd/compile: possible prove pass bug

func gcd(a, b uint32) uint32 {
	for b != 0 {
		a, b = b, a%b
	}
	return a
}

This doesn't actually compile to incorrect code yet, but it gets close.
The crux of the problem is that we have the rule that, given r := a%b, we can derive r < b (in the unsigned domain). Which at first looks reasonable. But reading it "backwards" causes trouble: r < b => b > r => b > 0 => b != 0. But that's the loop condition, implying that we don't actually need to do the loop test.
The implication above can only really be relied upon after the modulo operation runs (and thus panics, if b==0). Fortunately for us that's how the current compiler happens to use this information. But it isn't scoped to "after" in the current prove pass, so it is something of a ticking time bomb.
Filing for my own use for later. I'm rewriting some of this code.

But it isn't scoped to "after" in the current prove pass, so it is something of a ticking time bomb.

I'm missing why this is a problem, the front-end generate zero-checks branches proving b:
func gcd(a, b uint32) uint32 {
	for b != 0 {
		if b == 0 { runtime.panicdivide() }
		// at this point we already proved b != 0
		a, b = b, a%b
	}
	return a
}

When I wrote that code I assumed it was UB to call Mod(64|32|16|8)u with a zero divisor and should be impossible unless there is a frontend bug.

But that's the loop condition, implying that we don't actually need to do the loop test.

Isn't the loop condition r != 0 ?

if (Phi .Entry(b) .Loop(b_r)) != goto .Loop

I think the missing piece is that the rule that says r < b (which implies b != 0) applies across the entire function. Including before the loop even starts. So the fact that the loop condition even gets tested, instead of just assumed always true, is just an accident of missed optimization.

Hum,
This looks like this needs to run during the scan stage while doing DFS instead of ahead.

Yes, I think the right fix is to apply/remove it during DFS, at the point of the modulo (or maybe the block after? I'm not sure).
I think the first step though is to actually find a program that fails because of this. I ran into it after doing some pretty extensive modifications, so I'm not sure if it is actually triggerable currently.
I plan on revamping much of this pass for 1.24, so if there isn't a demonstrable bug, it can just wait and may become obsolete.

This should be fixed with the new prove pass implementation.


Fix typo in cython.yml

I think this is stopping the majority of the tests from running.
See https://github.com/cython/cython/pull/4471#issuecomment-980230790

Thanks, this is part of the misnamed PR #5

Thanks, this is part of the misnamed PR #5

Great - I'll close this and the other one then.

I merged theses changes in #5. The latest run ran 949 tests on linux, 914 on mac, 836 on windows. The next step will be to try to make them all pass.

It looks like the main issue is an unexpected "did you mean ..." in an exception message, which is easily ignored, and most of the rest is passing (I only looked at the Ubuntu tests though, so maybe Windows/Mac is worse...)


Deal with jaxb context factory properties

JAXB includes a couple properties used to resolve interface implementations whose values have changed:
https://github.com/eclipse-ee4j/jaxb-api/blob/master/jaxb-api/src/main/java/jakarta/xml/bind/JAXBContext.java#L308
https://github.com/eclipse-ee4j/jaxb-api/blob/master/jaxb-api/src/main/java/jakarta/xml/bind/ContextFinder.java#L42
These are used to resolve by checking system properties, which is out of scope for batavia, but also using jaxb.properties files on the classpath, which are in scope.

BTW i'm not completely certain this isn't already handled, but some simple grepping of files I don't fully understand makes me believe it's not.

Thanks @bstansberry , I'm not 100% sure either but think it should if not.

Thanks @bstansberry , I'm not 100% sure either but think it should if not.

@scottmarlow @ropalka FYI the test updated in https://github.com/wildfly/wildfly/pull/13833 deal with these properties. Tweaking those might be a way of checking wF's behavior.  That PR basically configures things so both the javax and jakarta props are used. Disabling the jakarta prop and confirming it still works might verify this.

@scottmarlow @ropalka FYI the test updated in https://github.com/wildfly/wildfly/pull/13833 deal with these properties. Tweaking those might be a way of checking wF's behavior.  That PR basically configures things so both the javax and jakarta props are used. Disabling the jakarta prop and confirming it still works might verify this.

I do see ee9 test failures after:

updating org.jboss.as.test.integration.jaxb.unit.JAXBContextSystemPropCustomTestCase#getSystemProperties back to prior:

        protected SystemProperty[] getSystemProperties() {
            return new SystemProperty[] {
                new DefaultSystemProperty(JAXB_FACTORY_PROP_NAME, CUSTOM_JAXB_FACTORY_CLASS)
            };
        }

Starting EE9 standalone server
cd wildfly/testsuite/integration/basic; mvn clean install -Dtest=org.jboss.as.test.integration.jaxb.unit.JAXBContextSystemPropCustomTestCase

I do see ee9 test failures after:

updating org.jboss.as.test.integration.jaxb.unit.JAXBContextSystemPropCustomTestCase#getSystemProperties back to prior:

        protected SystemProperty[] getSystemProperties() {
            return new SystemProperty[] {
                new DefaultSystemProperty(JAXB_FACTORY_PROP_NAME, CUSTOM_JAXB_FACTORY_CLASS)
            };
        }

Starting EE9 standalone server
cd wildfly/testsuite/integration/basic; mvn clean install -Dtest=org.jboss.as.test.integration.jaxb.unit.JAXBContextSystemPropCustomTestCase

IMO you cannot remove JAKARTA_FACTORY_PROP_NAME from both
JAXBContextSystemPropCustomTestCase  & JAXBContextSystemPropInternalTestCase @scottmarlow .
The server setup task adds these properties to DMR model of running server during the test and it
cannot be catched by transformer. On the other side what should work is
JAXBContextUsingPropertiesTestCase test without JAKARTA_FACTORY_PROP_NAME .
I created proposal PR to address this: https://github.com/wildfly-extras/batavia/pull/98

IMO you cannot remove JAKARTA_FACTORY_PROP_NAME from both
JAXBContextSystemPropCustomTestCase  & JAXBContextSystemPropInternalTestCase @scottmarlow .
The server setup task adds these properties to DMR model of running server during the test and it
cannot be catched by transformer. On the other side what should work is
JAXBContextUsingPropertiesTestCase test without JAKARTA_FACTORY_PROP_NAME .
I created proposal PR to address this: https://github.com/wildfly-extras/batavia/pull/98

+1 @ropalka re the tests that test what happens when the behavior is controlled by a system property. Batavia can't deal with that. JAXBContextUsingPropertiesTestCase uses a properties file inside the deployment; that's what deployment transformation should handle.

+1 @ropalka re the tests that test what happens when the behavior is controlled by a system property. Batavia can't deal with that. JAXBContextUsingPropertiesTestCase uses a properties file inside the deployment; that's what deployment transformation should handle.