MQTT OTA not working?

I'm using homie 2.0.0.
I have a RPi with mosquitto installed.
On the pi I also installed homie-ota.
When I push an firmware update, I see the firmware binary on the MQTT queue "homie/devicename/$implementation/ota/firmware"
Then on "homie/devicename/$ota" is see the new firmware version.
But nothing happends? I'm monitoring "homie/devicename/$implementation/ota/status" but no message appears.
What am I missing?

I too am facing the same issue.
Using https://github.com/jpmens/homie-ota
And this project at commit e5205887c3e231dece8ddc9c72a2460961198b31
My code has the following
/* Magic sequence for Autodetectable Binary Upload */
const char *__FLAGGED_FW_NAME = "\xbf\x84\xe4\x13\x54" FW_NAME "\x93\x44\x6b\xa7\x75";
const char *__FLAGGED_FW_VERSION = "\x6a\x3f\x3e\x0e\xe1" FW_VERSION "\xb0\x30\x48\xd4\x1a";
/* End of magic sequence for Autodetectable Binary Upload */

When the firmware.bin file is uploaded to mqtt queue, the esp8266 prints the following in the Serial log
✴ OTA available (version 0.0.2)
Subscribing to OTA payload...

But nothing after that.
Is there anything that I'm missing?

@prijswij Are you using the latest homie-esp8266 from the develop branch and the latest greatest homie-ota? If so, can you please provide an MQTT log showing your device's boot sequence and also the messages homie-ota publishes during update?
mosquitto_sub -v -t "homie/devicename/#"

There should be homie/devicename/$implementation/ota/status messages. Also, if possible, take a look at the serial output, or post it here.

@adityat90 This is probably unrelated. Your homie-esp8622 is old. It uses a different topic for firmware updates than the latest homie-ota. Can you upgrade your homie-esp8622 and your homie-ota to the latest commits from gihub?

@mrpace2 Seems like that did the trick! Thanks a lot!!!
I got it to work. Not too sure how though
Made a couple of changes on the way

Used this commit: 7bd50d7699896de171a16b9d3adb4e1b9f71dfcb
Changed the default base topic to homie/
Renamed my device from xxx-xxx-xx to a shorter name xx-xx

@adityat90 Thanks. Glad it works now. BTW, a couple of hours ago I commited a PR to homie-ota fixing the order of MQTT messages for Homie 2. The PR has been merged. I suggest that you update homie-ota once again if you pulled before the merge. Otherwise you'd need to press Go! twice.

@mrpace2 Yes i noticed that too. Wasn't too sure of why it was happening, but since it was working on every second press of Go! I just let it be for then and called it a night.
I'm loving this project.
Thanks again for all your help!

@adityat90 you can remove the magic markers, it is now done behind the scene when you call Homie_setFirmware()

@marvinroger fabulous! I'll try this soon. A bit busy getting node red integrated right now, but will come back again. If there's anything more that needs testing, let me know. I'd be glad to assist with anything you'd need.

I got it working, I think it might be a difference in version (build). I have homie 2.0.0 running and did do an update yesterday of homie-ota. I think after pushing the bin to homie/devicename/$implementation/ota/payload instead of firmware it worked, could that be possible?
I'll do a git pull on homie and homie-ota tonight and do some more testing.

Update: Using the latest of the latest of both homie and homie-ota, the sonoff is updating OTA.

what i do not see is a status update on the queue
afterwards, the sonoff keeps rebooting after startup. after resetting the sonoff and configuring it with the "old" values (same device name etc.) it keeps rebooting after startup.
When I reset, configure with a new device id, it works fine?

Not sure why... but now I see 'status' updates on the queue....
 So yes, it was probably messed up because something changed between two updates.


Datagrid show/hide column selector on voice over reads text 'All columns selected', but not displayed on the UI

Describe the accessibility issue
Datagrid Show/Hide column selector on voice over reads text 'All columns selected' but the UI does not show the same text displayed. Apps using datagrid have the same issue.
WCAG Guideline
[Issue WCAG20] - Inform assistive technology of changes in content.
(Show Hide Columns Dialogs) There is text that reads "All Columns selected", but this text is not updated when the user toggles any of the check boxes.
How to reproduce
Steps to reproduce the behavior:

Go to 'Clarity documentation for datagrid'
Click on Show/Hide columns https://clarity.design/documentation/datagrid/hide-show
Scroll down to the datagrid table, enable voice over, click on show/hide table.
See error on voice over as well as by inspecting the popup box.

Text: All column selected in voice over:

Inspecting the popup box in chrome, Dom contains the text, but not displayed in the UI:

Expected behavior
Ensure that this message is updated or that it is removed from the DOM altogether since the information is already communicated by the checkbox states.
Versions
App

Angular: [8.0.0]
Node: [10]
Clarity: [2.3.8]

Device:

Type: [MacBook]
OS: [iOS]
Browser [chrome]
Version [83]
Screen Reader: [VoiceOver]

For screen readers, we primarily support the following combinations, and other combinations will be considered on a case by case basis.

VoiceOver + Safari (Apple)

I have observed this,  All Columns Selected text is clr-sr-only meaning clarity readonly text. These texts are provided to only screen reader and not focusable also not displayed on UI. This should be as designed.

Clarity cares deeply about accessibility, and we work with our accessibility team to identify and triage issues. We have an internal tracking system to identify and verify accessibility issues, which has captured this already. Some issues with Clarity Angular are difficult to solve without causing side effects or breaking changes, and we have to balance concerns with fixing issues and breaking changes. As we build out Clarity Core, we are able to address these root cause accessibility issues and recommend adopting the Clarity Core implementations as they become available. We are closing this issue as we have the issues tracked internally. Please follow our development and releases to see when we release relevant Clarity Core components to make this possible.


Splitting Defaults & Plugins

Based on our recent conversation, I wanted to split (hehe) this part out from the Splitting API change to more clearly articulate what we're going for.
Ideally, the plugins.js would be something as simple as this:
export default {
  words: {
    key: 'word',
    by: /\s/+
  },

  chars: {
    key: 'char',
    by: ['words', /*/+] // An array runs multiple plugins
  },

  lines: {
    key: 'line'
    by: ['words', function(){}],
  },

  children: {
     key: 'child',
     by: require('./plugins/children') // or inline `function(){}`
  },
...

}

Then internally, when Splitting(el, 'words') is called, it runs something like
if ( plugins[by] ) {
  var key = plugins[by].key;
  var splitBy = plugins[by].by;
  return splitElement(els).map(function(s, i) {
      return s[name] ? s :  // If the element has already been split by this method, just return.
        index(s, key,
          typeof splitBy == 'function' ?
            splitBy(s.el, options) // If the split by value is a function, run it
            : split(s.el, key, splitBy) // Otherwise, use the internal splitter
        );
    });

New plugins / default plugins could be added via the Splitting.add function, taking basically the same values
Splitting.add('chars',{
  key: 'char',
  by: /*/
});

I think it might make sense that if the user wants to separate words then chars, that they have to provide ['words', 'chars'] because the premise of this is that splitting chars alone is a valid use case
One reason I like that design too is that you can expand upon it
by: ['paragraphs', 'word', 'chars']
or by word and then by the letter "e" if you like ['word', /e/i]

My only qualm with that is I expect the most common use case to be splitting chars by word, I just don’t want to make that difficult. If we can come up with a shortcut for it. Perhaps
{
   words: {}
   allChars: {},
   chars: {
     by: ['words', 'allChars']
   }
}

How would you feel about having that as the default behavior?
Splitting(el)

// same as

Splitting(el, ['words', 'chars'])

// same as

Splitting({
    target: el
})

// same as

Splitting({
    target: el,
    by: ['words', 'chars']
})

I think rather than having a separate type, this might be a good compromise that makes the most common use case easy while providing a non-recursive plugin structure.

I'm open to that. Thinking may be worth distinguishing between all characters (including whitespace) versus just characters in a word (each whitespace separated chunk of text).

If done right, doing allChars and chars shouldn't really add any weight.

You are right, allChars vs chars is a lot clearer and should be no trouble between them


Cleanup controlflow

Simplifies some control structures in templates as we now can use else.

npm run cleanup still throws @angular-eslint/template/prefer-control-flow warning
Is it okay, if you fix them in here as well?
The file which throws this is: src/app/site/pages/organization/pages/accounts/pages/account-detail/components/account-detail/account-detail.component.html

This is not a linter warning cleanup PR

I think this also improves the performance a bit.

Yes, this is the intention of this PR.


ShellCheck CI step can not write annotations to PR

Bug Report
The ShellCheck CI step of this component can not display check errors in Pull Requests due missing permission for Reviews for the GITHUB_TOKEN which is being passed to the action.

Hm, it seems that this is only for suggestions:
 Running shellcheck (suggestion) ...
  reviewdog: This GitHub token doesn't have write permission of Review API [1],
  so reviewdog will report results via logging command [2] and create annotations similar to
  github-pr-check reporter as a fallback.


Clean up watch extension example project

Clean up the garbage of the deleted file :put_litter_in_its_place:
I found that deleted file remains in the navigator area.

Fix code signing entitlements file name for case-sensitive file system
The first character of Extension.entitlements filename is upper case, but written in lowercase for code signing entitlements setting.

CC: @jpsim @segiddins

:+1: the CI failure looks unrelated

:+1:


Stuck unreads that I've read elsewhere

I have three PMs that a Zulip tab of mine thinks are unread:

The favicon and title agree with the sidebar: both show 4 unreads, and the favicon alternates showing the "person" icon.
I actually have a second tab -- something I don't usually do -- and I read the messages there, and it has the correct count (there's 1 genuine unread, in a stream):

Since noticing this situation, I've gotten several more PMs in the same thread, and read them in that same left-hand tab that I read the others (and replied). Each time, the messages make both unread counts go up; and when I read them on the left, both go back down. The one on the right stays 3 too high.
OK, and in the tab with the stuck unreads, I just went to PMs. It immediately went to a specific message, which promptly became read (and the count updated accordingly). That message had been edited, which is interesting in light of #7229.
The next message received in that thread was also unread -- but not edited.
The next was already read.
The next was also unread, and not edited.
See also #8042. Unlike both #8042 and #7229, though, the unread flag and count promptly updated when I went and looked at the messages -- the issue is that when I read them elsewhere first, this tab didn't get/understand that update from the server.
@showell, I think you made some fixes in this general area in recent weeks.

Great. FWIW, I just saw this again this morning, with a different PM thread:

so my estimate of how common this is is now a lot higher.
This time, there was one edited message in the thread -- but when I narrowed to PMs in the tab with the stuck unread, the message it went to wasn't that one, but instead the one after it. Together with the weak correlation in last night's instance, I think it's probably unrelated to message edits.

This is definitely mysterious.  The data structures for unread counts are pretty simple.  I can't reproduce this problem locally. I feel like the mostly likely explanation here is that the second tab stops receiving events due to some long-polling issue, and that manifests as an unread count problem.  But I'd love a consistent local repro to prove me wrong.


Handle blocked time ranges

As an editor I want content that must not be available (e.g. legal, commercial or geoblocking reason) not to be playable (skipped). As a user I still want to be able to play content containing blocked time ranges.
Acceptance criteria

Content that is blocked for a reason (legal, commercial, geoblocking, etc.) cannot be played / seen.
Content that is partially blocked can be played where not blocked.
Nested blocked ranges are supported.

Tasks

[x] Skip over blocked time ranges during playback.
[x] Prevent seeks into blocked intervals early.
[x] Prevent from starting at a blocked position.
[x] Add manually crafted example with blocked intervals to the demo.
[x] Parse blocked segment in IL metadata.
[x] Set blocked time ranges as interstitials.
[x] Check corner cases (e.g. blocked range starting at zero).

tvOS interstitials cannot be nested (otherwise the behavior is erratic). Possibly nested time ranges have to be flattened first.

There is a minor issue with some content with blocked time ranges at the very end (e.g. Ramdam urn:rts:video:13041988). In this case the progress is stuck at 1 after replaying the content.
This is due to issues with the low-level seek not completing with finished set to true, an issue already encountered in the past. For the moment it is better to consider it as a known issue and not to introduce silly workarounds for what is ultimately a corner case.


Mac Issue Downloading Code

Describe the bug
Not able to download the code. I can copy the code, but there is no download button available. Tried to access a zip but was not able to. Please instruct how to download. Also, does this program work for Mac users. If not, how do I adapt it to work

@LeadingA5 check the pinned issues.

Which one exactly? Don't see anything on this issue. Is it possible to
provide an answer directly? Thanks
On Tue, Apr 18, 2023 at 7:48 PM Pishang Ujeniya @.***>
wrote:

@LeadingA5 https://github.com/LeadingA5 check the pinned issues.
—
Reply to this email directly, view it on GitHub
https://github.com/pishangujeniya/instagram-helper/issues/92#issuecomment-1513919119,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7JASJSPD6MHYBRQRJASOW3XB4R5TANCNFSM6AAAAAAXDG2F6A
.
You are receiving this because you were mentioned.Message ID:
@.***>

@LeadingA5  https://github.com/pishangujeniya/instagram-helper/issues/22

Stuck on the last step. Everything works except for when the code starts
running, it doesn't get past the "Getting Messages..." stage.  Any suggestions?

Message ID: @.***
com>

Fixed that. However, now it says all messages deleted and nothing has been
deleted. I looked at number 73 but it still doesn't work. Any ideas?
On Tue, Apr 18, 2023 at 8:37 PM Adam Tarsky @.***> wrote:

Stuck on the last step. Everything works except for when the code starts
running, it doesn't get past the "Getting Messages..." stage.  Any suggestions?

Message ID: @.***
com>

Provide the screenshot of errors, so that I can detect what mistake you did.

[image: image.png][image: image.png][image: image.png]
P.S, I do have the chrome extension active and running
On Tue, Apr 18, 2023 at 11:01 PM Pishang Ujeniya @.***>
wrote:

Provide the screenshot of errors, so that I can detect what mistake you
did.
—
Reply to this email directly, view it on GitHub
https://github.com/pishangujeniya/instagram-helper/issues/92#issuecomment-1514066884,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7JASJXVX2HVX7OGKQ7EYCDXB5IQFANCNFSM6AAAAAAXDG2F6A
.
You are receiving this because you were mentioned.Message ID:
@.***>

Please follow the steps properly, I can see that you are not following steps properly as per mentioned in the Readme.
Closing this issue.
No issues from our side.

Tried everything and no success. It is not a CSP error, I make sure it's
active. I followed the ReadMe and tried to refresh constantly. Could you
send me your phone number or email and we can further discuss or call?
On Wed, Apr 19, 2023 at 12:30 PM Pishang Ujeniya @.***>
wrote:

Please follow the steps properly, I can see that you are not following
steps properly as per mentioned in the Readme.
Closing this issue.
No issues from our side.
—
Reply to this email directly, view it on GitHub
https://github.com/pishangujeniya/instagram-helper/issues/92#issuecomment-1515036341,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A7JASJRNBHJ6XKDN2AM3F63XCAHKVANCNFSM6AAAAAAXDG2F6A
.
You are receiving this because you were mentioned.Message ID:
@.***>


bug: no preview when running plan

From what I read here my understanding is that mp plan should result in a preview showing the git diff. However, that is not the case.
➜ mp init 'repo:clever/microplane' --repo-search
➜ mp plan -r microplane -b go1.9 -m "Golang 1.9 upgrade" -- sed -i 's/1.17/1.18/g' .circleci/config.yml
2022/03/26 21:29:50 planning 1 repos with parallelism limit [10]
2022/03/26 21:29:50 planning: Clever/microplane
➜

Interestingly the change is still made and the git diff is still stored in plan.json, it just doesn't show it for some reason:
➜  cat mp/microplane/plan/plan.json
{
    "Success": true,
    "PlanDir": "/home/caleb/misc/candel/b/mp/microplane/plan/planned",
    "GitDiff": "\u001b[1mdiff --git a/.circleci/config.yml b/.circleci/config.yml\u001b[m\n\u001b[1mindex 17e4c9f..00a8c00 100644\u001b[m\n\u001b[1m--- a/.circleci/config.yml\u001b[m\n\u001b[1m+++ b/.circleci/config.yml\u001b[m\n\u001b[36m@@ -3,7 +3,7 @@\u001b[m \u001b[mjobs:\u001b[m\n   build:\u001b[m\n     working_directory: /go/src/github.com/Clever/microplane\u001b[m\n     docker:\u001b[m\n\u001b[31m-    - image: circleci/golang:1.17-buster\u001b[m\n\u001b[32m+\u001b[m\u001b[32m    - image: circleci/golang:1.18-buster\u001b[m\n     environment:\u001b[m\n       CIRCLE_ARTIFACTS: /tmp/circleci-artifacts\u001b[m\n       CIRCLE_TEST_REPORTS: /tmp/circleci-test-results\u001b[m\n",
    "CommitMessage": "Golang 1.9 upgrade",
    "BranchName": "go1.9"
}%
➜  head mp/microplane/plan/planned/.circleci/config.yml
version: 2
jobs:
  build:
    working_directory: /go/src/github.com/Clever/microplane
    docker:
    - image: circleci/golang:1.18-buster
    environment:
      CIRCLE_ARTIFACTS: /tmp/circleci-artifacts
      CIRCLE_TEST_REPORTS: /tmp/circleci-test-results
    steps:

The preview was the reason I decided to try this out over shepherd. It's a really good idea so hopefully this is a easy fix.

Thanks for reporting!
This sounds unexpected; potentially a regression.

@caleb15 I ran into the same issue and realized I needed to pas in the --diff option.
This worked for me:
➜ mp plan -r microplane -b go1.9 -m "Golang 1.9 upgrade" --diff -- sed -i 's/1.17/1.18/g' .circleci/config.yml

Haven't tested it but it looks like you're right, doh!
➜  superset git:(master) ✗ mp plan -h
Plan changes by running a command against cloned repos

Usage:
  mp plan [cmd] [args...] [flags]

Examples:
mp plan -b microplaning -m 'microplane fun' -r app-service -- sh -c /absolute/path/to/script
mp plan -b microplaning -m 'microplane fun' -r app-service -- python /absolute/path/to/script

Flags:
  -b, --branch string     Git branch to commit to
  -d, --diff              Show the diffs of the changes made per repo

Thanks @cassidycodes ! :)


vim-go uses location lists now

As mentioned in 7.10. section of documentation
The "vim-go" Vim plugin (https://github.com/fatih/vim-go) uses |quickfix|
lists, and thus doesn't conflict with syntastic (which uses |location-list|
lists).

It uses Location lists now, so it needs to be resolved somehow.

Right, and there's no way to turn that off. grumble
Ok, I updated the manual in 91814d6.  However, I'm not sure setting g:go_fmt_fail_silently is enough to keep vim-go from trampling over syntastic's loclists.  I'm not using vim-go, so I can't check.  Confirmations either way from people actually using both syntastic and the latest versions of vim-go would be highly appreciated.

Actually when using vim-go and Syntastic I cannot view any Location Lists that vim-go opens when using it without Syntastic. g:go_fmt_fail_silently seems not to solve problem at all.

What happens if you set g:go_fmt_fail_silently to 1?

Location list doesn't open.
But there are error indicators on the left side of window

The same happens when g:go_fmt_fail_silently is set to 0

Then perhaps it's time to ask vim-go maintainers to play nicer?

@fatih what do you think about?

I don't know what play nicer means @lcd047  :) g:go_fmt_fail_silently does exactly what it says, it doesn't open any location list if there is any kind of error while saving the file via :GoFmt, either explicit either via autosave trigger. What exactly is the problem here?

@fatih "Play nicer" means vim-go not assuming it has exclusive control over location lists.  Syntastic has such a mode: if you set g:syntastic_always_populate_loc_list and g:syntastic_auto_loc_list to 0, it would save and restore old location lists.  Sadly, there is no way to have both vim-go and syntastic use loclists without sacrificing functionality.

it would save and restore old location lists.

Can you please expand this. What do you mean by old location lists? The same can be applied to syntastic too. Btw, I've abstracted all my list operations and I'm easily able to disable/change it to quickfix and do many other things. I'm just trying to learn what still the problem is.

What do you mean by old location lists?

@fatih There's actually a stack of location lists (and quickfix lists).  Syntastic does something like this when it runs a checker (simplified):
lgetexpr some_lines
let local_loclist = deepcopy(getloclist(0))
lolder

It then uses the local copy local_loclist until a checker is run again.  If g:syntastic_always_populate_loc_list is set to 0 and the user doesn't run :Errors to open the error window, that's all there is to it, the loclist is all yours to play with.
However, if g:syntastic_always_populate_loc_list is set to 1, or if the user runs :Errors, there's also some later call to setloclist(0, local_loclist), because lopen works with the current location list.  Basically, syntastic expects the location list not to change under its feet after that.
This is further complicated by the fact that Vim API has no function to get the window owner of a location list.  Syntastic tries to work around this by calling getloclist(0) for all windows and comparing the result with the loclist for the current error window.  It needs to do that when it decides whether to close the error window automatically.

The same can be applied to syntastic too.

With vim-go using location lists, there is a mutual exclusion: either syntastic or vim-go needs to leave alone location lists.  As I said above, if g:syntastic_always_populate_loc_list is set to 0, location lists are your for the taking, at the price of users not being able to use error windows in syntastic.  It would be nice if vim-go would have a similar way to leave location lists to syntastic.

Btw, I've abstracted all my list operations and I'm easily able to disable/change it to quickfix and do many other things.

For what it's worth, syntastic can't do the same because of the logic around automatic closing of the error window.  That can't be made robust because of limitations in Vim's API.  Automatic opening and closing the error window is by far the most messy feature of syntastic.  Removing it would solve most known bugs, but it's of course way too late to do that now.

I'm just trying to learn what still the problem is.

I can't seem to reproduce the problem with the latest syntastic and the latest vim-go.  Perhaps @nothingelsematters7 can describe what still doesn't work.

I take it the problem is solved then?  Feel free to reopen this if it isn't.


Update nf-winscard-scardstatusw.md

Fixed smart card state indicator name.

Thanks for the correction!


netcdf_file does not obey valid_[min/max/range]

testcase:
step 1: open https://madis-data.ncep.noaa.gov/madisPublic1/data/archive/2016/07/01/LDAD/mesonet/netCDF/20160701_0000.gz with both scipy and netCDF4
step2: compare with test script:
import scipy.io.netcdf
import netCDF4

foo_meso = scipy.io.netcdf.netcdf_file('20160701_0000_meso.nc', maskandscale=True)
foo_meso2 = netCDF4.Dataset('20160701_0000_meso.nc')

foo_meso.variables['windSpeed'][52254].item() != foo_meso2.variables['windSpeed'][52254].item()

in this case the windSpeed variable has a valid_min attribute and scipy's impl doesn't support masking this attribute
See: http://www.unidata.ucar.edu/software/netcdf/docs/attribute_conventions.html

@rgommers, I don't I'm not sure who owns the netcdf code but I'm happy to add a note to the docstring specifying how we don't follow any of the attribute conventions.
In addition to the doc string change should we maybe display a warning when valid_min add_offset, ... are encountered?

small code sample
import numpy as np
from   scipy.io import netcdf

fn = "test.nc"

with netcdf.netcdf_file(fn, "w") as ncfile:
  nx    = 5
  data  = np.arange(0, 50, 10)
  ncfile.createDimension('nx', nx)

  var_data  = ncfile.createVariable("data",  'i' , ('nx',))
  var_data.valid_min = 15
  var_data._FillValue = 100
  var_data[:] = data

with netcdf.netcdf_file(fn) as ncfile:
  print (ncfile.variables['data']._attributes)
  print (ncfile.variables['data'][:])

OrderedDict([('valid_min', 15), ('_FillValue', 100)])
[ 0 10 20 30 40]

No one really owns io.netcdf. It was originally a fork of https://pypi.org/project/pupynere, that's no longer developed. The scope of our NetCDF support here is NetCDF4, which is quite old and will continue to reduce in relevance - so it's kind of in minimal maintenance mode.
Yes, a clarifying note to the docs sounds good, thanks.


fix: 🐛 TypeError: claimTypes.map is not a function

Description
changes the conditional operator to check if claimTypes is an Array and then map through the values
JIRA Link
https://polymesh.atlassian.net/browse/DA-1127
Checklist

[x] Updated the Readme.md (if required) ?

:tada: This PR is included in version 24.0.0-alpha.21 :tada:
The release is available on:

npm package (@alpha dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 24.0.0-beta.3 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 24.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


feat(apps/prod/jenkins/post/tidb): optimize the bazel --jobs option

min between cpu cores and total_bazel_mem_resource / default max memory per bazel task
Signed-off-by: wuhuizuo<EMAIL_ADDRESS>

/test all


Amazon Pay component

Summary

Add component for Amazon Pay, which loads the Amazon Pay script and handles the full payment flow.
Add Amazon Pay to the Wallets section in the playground.

After some discussions we decided we'll add some extra functionalities to the component before releasing it.
Changing this to [Draft] to not merging it by mistake.


Obsolete GO:0062198  rDNA replication pause site heterochromatin ?

Hello,
GO:0062198  rDNA replication pause site heterochromatin has no annotations. It's defined as 'A region of heterochromatin associated with sites in rDNA repeats where replication forks pause.' - but I dont think this is a specific cellular component.
There are no annotations. Paper cited to create the term is PMID: 25417108
@colinlog @RLovering @ValWood
Do you agree with obsoletion ?
Thanks, Pascale

I do, we have not used it for the supporting publication. Sounds more like a SO term

I would like to email Rob Martienssen and ask where he would house this
term in the GO or SO. As far as I can see, you are correct Pascale, it is
not clear that this is a cell component. It is more like an intermediate in
replication. Is there a 'replication fork collision with RNA polymerase'
term? Jesper Svejstrup is an author who has done quite some work on this.
Basically the process would be a transcription and replication term: how
cells avoid interference between these two processive DNA tracking engines
that are the RNA and DNA polymerases.  I can CC Jesper Svejstrup in my
email to Rob Martienssen. Hoep t get to this today...
Pascale how do I find authors whose papers have been used in GO annotation?
In other words; how can I find GO terms that are associated with a
particular author?
On Fri, Mar 27, 2020 at 4:23 PM pgaudet<EMAIL_ADDRESS>wrote:

Hello,
GO:0062198 rDNA replication pause site heterochromatin has no annotations.
It's defined as 'A region of heterochromatin associated with sites in rDNA
repeats where replication forks pause.' - but I dont think this is a
specific cellular component.
There are no annotations. Paper cited to create the term is PMID: 25417108
@colinlog https://github.com/colinlog @RLovering
https://github.com/RLovering @ValWood https://github.com/ValWood
Do you agree with obsoletion ?
Thanks, Pascale
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/geneontology/go-ontology/issues/19178, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ALZVLKE6JCFAS5IOMFOC7SDRJTAIVANCNFSM4LVCXQ2A
.

Pascale how do I find authors whose papers have been used in GO annotation?

Well in this case, as I mentioned in the first comment, there are no annotations.
Otherwise we look at annotations in AmiGO or QuickGO (I can show you).
Thanks, Pascale

This term isn't used by us for GO anntoation. It seems to have been created  for FYPO logical def. If this is the case the logical def can use SO instead.
https://www.pombase.org/reference/PMID:25417108
@mah11

FYPO does not use GO:0062198.

OK in that case I don't know where this term comes from.
can be obsoleted.

Oh here is the history:
https://github.com/geneontology/go-ontology/issues/18249

What I said in #18249 still holds - if GO:0062198 is kept, FYPO can change an existing logical definition to use it, but if the GO term goes obsolete FYPO can do without the logical def. (FYPO has not yet used GO:0062198.)

But @mah11 You write above that 'FYPO does not use GO:0062198.'  - does it ?

Not now -- "does not" is present tense.
As my second comment indicates, FYPO could use GO:0062189 in the near future if it is retained.
I'd like to see GO second-guess its decisions a bit less, since the issue seemed sorted following discussion for #18249 -- @ukemi even said it was considered on an editors' call -- but it remains the case that FYPO will adjust to whatever the outcome of this ticket is.

Anyway @colinlog  no need to contact Rob, but he will be pleased about these changes because he is one of the people who said we should remove the 'chromatin silencing' in favour of heterochromatin assembly. I will ask him to look over these changes once completed.

HI @mah11 Sorry about the flip flopping. We're trying to take a more global approach to make the guidelines for creating terms or not more consistent.

Dear all,
The proposal has been made to obsolete GO:0062198 rDNA replication pause site heterochromatin. The reason for obsoletion is that this is not a specific cellular component, it is a type of sequence, which should be captured with a Sequence Ontology term.
There are no annotations, no mappings to this term. This term is not present in any subset.
You can comment in the ticket:
https://github.com/geneontology/go-ontology/issues/19178
We are opening a comment period for this proposed obsoletion. We’d like to proceed with the obsoletion this term on April 8th, 2020. Unless objections are received by April 8th, 2020, we will assume that you agree to this change.
Thanks, Pascale


Bean class support for @Body() annotation

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

Hi @seedinwind,
Currently you can use thetoJson() method if you are using JsonSerializable plugin.
You can refer the sample code here

@seedinwind  Please use generator v0.4.0


test-hdr Assertion `m_nTop > 0' failed

assertion happens on linux with both g++ 4.8 and clang 3.5
test-hdr: libcds/cds/gc/details/hp_alloc.h:236: cds::gc::hp::details::hp_allocator<Allocator>::atomic_hazard_ptr& cds::gc::hp::details::hp_allocator<Allocator>::alloc() [with Allocator = std::allocator<int>; cds::gc::hp::details::hp_allocator<Allocator>::atomic_hazard_ptr = cds::gc::hp::details::hp_guard]: Assertion `m_nTop > 0' failed.

It happens during this test
CPPUNIT_TEST(split_dyn_HP_base_cmp)

CMAKE_BUILD_TYPE=DEBUG
with clang, I used libc++. CMAKE_CXX_FLAGS=-stdlib=libc++

I get a similar error on the cdsu-set test
Set_DelOdd::SkipListSet_hp_less_pascal
        Insert thread count=8 delete thread count=4 extract thread count=4 set size=1000000
        EXCEPTION:
        Too few hazard pointersSet_InsDelFind::MichaelSet_HP_cmp_stdAlloc
        Thread count=8 initial map size=500000 insert=5% delete=5% duration=30s
        Load factor=1

I think, Hazard Pointer SMR is initialized by default. Usually, it means that no test.conf (or test-debug.conf for debug build) is provided for test.
By default, test suite uses ./test.conf (for debug build - ./test-debug.conf). The example of those files is located in tests/data directory.
The top of test report tells the count of Hazard Pointer like this:
Use in-place scan strategy for Hazard Pointer memory reclamation algorithm
Hazard Pointer count: 72
Max thread count for HP: 100
Retired HP array capacity: 1600

That was exactly what was happening.  I submitted a pull request to copy the conf files to the bin directory when cmake is run.


Usage of deprecated SonarQube API < 5.6

The SonarQube API that was deprecated before version 5.6 will dropped soon.
It can be tested with SonarQube artifact <IP_ADDRESS>895 (or newer one from the branch 'feature/dm/sq56').
More information: https://jira.sonarsource.com/browse/SONAR-10138

Fixed with #44 and #49.


MQTTClient.ConnectAsync does not return/throw if broker disconnects, instead times out. Different than 2.8 behavior

Describe your question
We have some custom broker authentication mechanisms which if are not met, the broker disconnects the connection. This is an expected outcome. It has to do establishing initial trust using single use data to setup a form of mutual authentication.
When using MQTTNet 2.8.5, when the broker closes the connection because the single use data has already been used, ConnectAsync threw an MqttCommunicationClosedGracefullyException.
2.8.5 Stack trace:

MQTTnet.Exceptions.MqttCommunicationClosedGracefullyException: Exception of type 'MQTTnet.Exceptions.MqttCommunicationClosedGracefullyException' was thrown.
at MQTTnet.Serializer.MqttPacketReader.ReadFixedHeaderAsync(IMqttChannel channel, Byte[] fixedHeaderBuffer, Byte[] singleByteBuffer, CancellationToken cancellationToken)
at MQTTnet.Adapter.MqttChannelAdapter.ReceiveAsync(CancellationToken cancellationToken)
at MQTTnet.Adapter.MqttChannelAdapter.ReceivePacketAsync(TimeSpan timeout, CancellationToken cancellationToken)
at MQTTnet.Client.MqttClient.ReceivePacketsAsync(CancellationToken cancellationToken)
at MQTTnet.Internal.TaskExtensions.TimeoutAfterAsync[TResult](Func`2 action, TimeSpan timeout, CancellationToken cancellationToken)
at MQTTnet.Client.MqttClient.SendAndReceiveAsync[TResponsePacket](MqttBasePacket requestPacket, CancellationToken cancellationToken)
at MQTTnet.Client.MqttClient.AuthenticateAsync(MqttApplicationMessage willApplicationMessage, CancellationToken cancellationToken)
at MQTTnet.Client.MqttClient.ConnectAsync(IMqttClientOptions options)
at MQTTnet.Client.MqttClient.ConnectAsync(IMqttClientOptions options)
at Broker.Communication.Activator.BrokerConnectionActivationStartupFilter.ActivateAsync()

In 3.1.1 (and 3.1.2) in this same scenario, we do not get this exception and the ConnectAsync call does not complete until the comm timeout occurs.
So I see from your upgrade guide I should add a DisconnectedHandler, so I did that (and also tried UseDisconnectHanlder(...))
When I call ConnectAsync() the disconnected handler gets called almost immediately because the broker disconnects (which is by design for this use case).
However the ConnectAsync call does not return or throw when I await the result until the connection timeout has occurred, even though the connection has been disconnected.
I have tried using a CancellationToken and cancelling the ConnectAsync call in my disconnected handler but that does not seem to cancel the action either.
Any advice on what I should do to get the ConnectAsync call to either fail when it has connected and the broker closes the connection or to cancel the connection attempt in this case?
Which project is your question related to?

Client

Is it possible to create a Unit Test for this situation so that I can reproduce it?

I'm not sure I can build a Unit Test as our broker (Apache ArtemisMQ) might be doing something interesting, but I will try.
In the meantime a little more information after further investigation:
My code is trying various values of the single use data in order to find one which has not been used already (this data is baked into a custom installer which has limited uses, there is a list of them to use, lets say 10 different values).  This is all wrapped up into the password we specify in MqttClientOptionsBuilder.withCredentials()  (Assuming all the single use data has already been used once since this is an "error" scenario")
So the pattern is, build the password with single use data 1, attempt connection. Broker closes the connection. Detect this, then try the next one in the list.
Some code which demonstrates the issue. (this is inside a loop where we try with different single use data) Verbose logging for this code below:
`
                var options = new MqttClientOptionsBuilder()
                    .WithClientId(policy.InstanceId + "-ACTIVATION")
                    .WithTcpServer(ActivationConfiguration.BrokerUri.Host, ActivationConfiguration.BrokerUri.Port)
                    .WithCredentials(ActivationConfiguration.BrokerUsername, token)
                    .WithCleanSession()
                    .WithCommunicationTimeout(TimeSpan.FromSeconds(ActivationConfiguration.TimeoutSeconds))
                    .WithTls(new MqttClientOptionsBuilderTlsParameters()
                    {
                        AllowUntrustedCertificates = false,
                        IgnoreCertificateChainErrors = false,
                        IgnoreCertificateRevocationErrors = true,
                        UseTls = true,
                        SslProtocol = System.Security.Authentication.SslProtocols.Tls12
                    }
                    ).Build();
                 Logger.Info("MainThread: Sending Activation Token to Broker to establish trust. BrokerUri: " + ActivationConfiguration.BrokerUri);
                var cancelTokenSource = new CancellationTokenSource();
                MqttClient.Value.UseDisconnectedHandler(new MqttClientDisconnectedHandlerDelegate((a) =>
                {
                    Logger.Error(a.Exception, $"DisconnectHandler: Broker Disconnected. Reason: {a.Reason} Exception: {a.Exception}");
                    cancelTokenSource.Cancel();
                    Logger.Info($"DisconnectHandler: ConnectAsync() Task has been requested to cancel: CancelTokenSource.IsCancellationRequested:{cancelTokenSource.IsCancellationRequested}");
                }));
                MqttClient.Value.ConnectedHandler = new MqttClientConnectedHandlerDelegate((a) =>
                {
                    Logger.Info($"ConnectedHandler: Broker Connection established. {a.ConnectResult.ResultCode}");
                });

                var connTask = MqttClient.Value.ConnectAsync(options, cancelTokenSource.Token);
                //Added below to show the task status. The status never changes until we get a timeout exception.
                int retry = 5;
                while(retry-- > 0 && !connTask.IsCompleted)
                {
                    Logger.Info($"MainThread: ConnTask.Status: {connTask.Status} ConnTask.IsCanceled: {connTask.IsCanceled} ConnTask.IsFaulted: {connTask.IsFaulted}");
                    Thread.Sleep(1000);
                }
                Logger.Info("MainThread: Awaiting connTask result now");
                var connectResult = connTask.GetAwaiter().GetResult();

                Logger.Info("Activation: SUCCESS!");

                MqttClient.Value.DisconnectAsync().GetAwaiter().GetResult();

`
Log file output. This shows 2 attempts to use already used token, where our broker immediately closes the connection on connection attempt (where with 2.8.5 we would get an exception) and then a third attempt which is successful to show the happy path:
[11:50:25 INF] Attempting to activate
[11:50:26 INF] MainThread: Sending Activation Token to Broker to establish trust. BrokerUri:
[11:50:26 INF] MqttClient: Verbose Trying to connect with server 'REDACTED' (Timeout=00:02:00).
[11:50:26 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:50:26 INF] MqttClient: Verbose Connection with server established.
[11:50:26 INF] MqttClient: Verbose Start receiving packets.
[11:50:26 INF] MqttClient: Verbose Disconnecting [Timeout=00:02:00]
[11:50:26 INF] MqttClient: Verbose Disconnected from adapter.
[11:50:26 INF] MqttClient: Info Disconnected.
[11:50:26 INF] MqttClient: Verbose Stopped receiving packets.
[11:50:26 ERR] DisconnectHandler: Broker Disconnected. Reason: NormalDisconnection Exception:
[11:50:26 INF] DisconnectHandler: ConnectAsync() Task has been requested to cancel: CancelTokenSource.IsCancellationRequested:True
[11:50:27 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:50:28 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:50:29 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:50:30 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:50:31 INF] MainThread: Awaiting connTask result now
[11:52:26 INF] MqttClient: Warning Timeout while waiting for response packet (MqttConnAckPacket).
[11:52:26 INF] MqttClient: Error Error while connecting with server.
MQTTnet.Adapter.MqttConnectingFailedException: Error while authenticating. Exception of type 'MQTTnet.Exceptions.MqttCommunicationTimedOutException was thrown.
---> MQTTnet.Exceptions.MqttCommunicationTimedOutException: Exception of type 'MQTTnet.Exceptions.MqttCommunicationTimedOutException was thrown.
at MQTTnet.PacketDispatcher.MqttPacketAwaitable1.WaitOneAsync(TimeSpan timeout)
at MQTTnet.Client.MqttClient.SendAndReceiveAsync[TResponsePacket](MqttBasePacket requestPacket, CancellationToken cancellationToken)
at MQTTnet.Client.MqttClient.AuthenticateAsync(IMqttChannelAdapter channelAdapter, MqttApplicationMessage willApplicationMessage, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at MQTTnet.Client.MqttClient.AuthenticateAsync(IMqttChannelAdapter channelAdapter, MqttApplicationMessage willApplicationMessage, CancellationToken cancellationToken)
at MQTTnet.Client.MqttClient.ConnectAsync(IMqttClientOptions options, CancellationToken cancellationToken)
[11:52:26 ERR] Establishing Trust failed.
[11:52:29 INF] Attempting to activate
[11:52:29 INF] MainThread: Sending Activation Token to Broker to establish trust.
[11:52:29 INF] MqttClient: Verbose Trying to connect with server 'REDACTED' (Timeout=00:02:00).
[11:52:29 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:52:29 INF] MqttClient: Verbose Connection with server established.
[11:52:29 INF] MqttClient: Verbose Start receiving packets.
[11:52:29 INF] MqttClient: Verbose Disconnecting [Timeout=00:02:00]
[11:52:29 INF] MqttClient: Verbose Disconnected from adapter.
[11:52:29 INF] MqttClient: Info Disconnected.
[11:52:29 INF] MqttClient: Verbose Stopped receiving packets.
[11:52:29 ERR] DisconnectHandler: Broker Disconnected. Reason: UnspecifiedError Exception:
[11:52:29 INF] DisconnectHandler: ConnectAsync() Task has been requested to cancel: CancelTokenSource.IsCancellationRequested:True
[11:52:30 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:52:31 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:52:32 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:52:33 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:52:34 INF] MainThread: Awaiting connTask result now
[11:54:29 INF] MqttClient: Warning Timeout while waiting for response packet (MqttConnAckPacket).
[11:54:29 INF] MqttClient: Error Error while connecting with server.
MQTTnet.Adapter.MqttConnectingFailedException: Error while authenticating. Exception of type 'MQTTnet.Exceptions.MqttCommunicationTimedOutException' was thrown.
---> MQTTnet.Exceptions.MqttCommunicationTimedOutException: Exception of type 'MQTTnet.Exceptions.MqttCommunicationTimedOutException' was thrown.
at MQTTnet.PacketDispatcher.MqttPacketAwaitable1.WaitOneAsync(TimeSpan timeout)
at MQTTnet.Client.MqttClient.SendAndReceiveAsync[TResponsePacket](MqttBasePacket requestPacket, CancellationToken cancellationToken)
at MQTTnet.Client.MqttClient.AuthenticateAsync(IMqttChannelAdapter channelAdapter, MqttApplicationMessage willApplicationMessage, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at MQTTnet.Client.MqttClient.AuthenticateAsync(IMqttChannelAdapter channelAdapter, MqttApplicationMessage willApplicationMessage, CancellationToken cancellationToken)
at MQTTnet.Client.MqttClient.ConnectAsync(IMqttClientOptions options, CancellationToken cancellationToken)
[11:54:29 ERR] Establishing Trust failed.
[11:54:32 INF] Attempting to activate
[11:54:32 INF] MainThread: Sending Activation Token to Broker to establish trust.
[11:54:32 INF] MqttClient: Verbose Trying to connect with server 'REDACTED' (Timeout=00:02:00).
[11:54:32 INF] MainThread: ConnTask.Status: WaitingForActivation ConnTask.IsCanceled: False ConnTask.IsFaulted: False
[11:54:33 INF] MqttClient: Verbose Connection with server established.
[11:54:33 INF] MqttClient: Verbose Start receiving packets.
[11:54:33 INF] MqttClient: Verbose Authenticated MQTT connection with server established.
[11:54:33 INF] MqttClient: Info Connected.
[11:54:33 INF] ConnectedHandler: Broker Connection established. Success
[11:54:33 INF] MqttClient: Verbose Start sending keep alive packets.
[11:54:33 INF] MainThread: Awaiting connTask result now
[11:54:40 INF] Activation: SUCCESS!
[11:54:40 INF] MqttClient: Verbose Stopped sending keep alive packets.
[11:54:40 INF] MqttClient: Verbose Disconnecting [Timeout=00:02:00]
[11:54:40 INF] MqttClient: Verbose Disconnected from adapter.
[11:54:40 INF] MqttClient: Verbose Stopped receiving packets.
[11:54:40 INF] MqttClient: Info Disconnected.
[11:54:40 ERR] DisconnectHandler: Broker Disconnected. Reason: NormalDisconnection Exception:

Please try with version 4 from MyGet feed. A lot of APIs have changed including async method calls and internal thread management.

Closing this due to inactivity.


Missing Git tag(s) in repo

Latest release on NPM is 2.1.4 but latest tag I see here is 2.1.1.

Hello - I'm sorry to say that this plugin is no longer being maintained.  I have tried to close all issues ahead of doing this but instead have found that the issue list just keeps growing.  I simply do not have the time to keep up.  Sorry.
Please keep an eye on the README where I will record anyone who forks this repo with the intention to supporting it in the future.


"npx junior-web" fails to work when the Junior is installed from @aijunior/dev to another project or globally.

It works with npm add ../Junior though
The issue is with the clipboard-copy dependency, which should be eliminated anyway.
Project Description
Hey, Contributor!
Interpret issues freely. Need help or have ideas? Comment right here. Remember, this is the only forum where Krisztián answers questions - your golden ticket to help!
Note: We eat our own dog food. We use Junior to work on Junior.
Keep it friendly, that's our vibe.
Happy contributing!

Fixed in 0.0.6


Error with pre-create check: ...no such host

When I run this command docker-machine create --driver virtualbox default I get this error:
Running pre-create checks...
(default) No default Boot2Docker ISO found locally, downloading the latest release...
Error with pre-create check: "Get https://api.github.com/repos/boot2docker/boot2docker/releases/latest: dial tcp: lookup api.github.com on <IP_ADDRESS>:53: no such host"

Also when I double click the docker quickstart terminal, I get the following error:
bash --login '/Applications/Docker/Docker Quickstart Terminal.app/Contents/Resources/Scripts/start.sh'
Running pre-create checks...
(default) No default Boot2Docker ISO found locally, downloading the latest release...
(default) Latest release for github.com/boot2docker/boot2docker is v1.10.3
(default) Downloading /Users/mz/.docker/machine/cache/boot2docker.iso from https://github.com/boot2docker/boot2docker/releases/download/v1.10.3/boot2docker.iso...
Error with pre-create check: "Get https://github.com/boot2docker/boot2docker/releases/download/v1.10.3/boot2docker.iso: dial tcp: lookup github.com on <IP_ADDRESS>:53: no such host"
Host does not exist: "default"
Regenerate TLS machine certs?  Warning: this is irreversible. (y/n): Regenerating TLS certificates
Host does not exist: "default"
Host does not exist: "default"

                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/

Host does not exist: "default"
docker is configured to use the default machine with IP
For help getting started, check out the docs at https://docs.docker.com

I am on MAC OS X El Capitan v10.11.3
My Docker machine version is: 0.6.0, build e27fb87
Additional Info:
When I try to ping any server I get this:
❯ ping google.com
PING google.com (<IP_ADDRESS>): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
^C
--- google.com ping statistics ---
5 packets transmitted, 0 packets received, 100.0% packet loss

But all the other tools (cURL, NPM, Bower, Composer,...) works just fine.

Here's a workaround that solves this *&^%$%#@!
Download the boot2docker.iso file manually by going to https://api.github.com/repos/boot2docker/boot2docker/releases/latest then clicking on the html_url and finally choosing to download the file.
Once you get the file go and place it manually in /Users/{user}/.docker/machine/cache/
Finally re-run this command docker-machine create --driver virtualbox default

correct /Users/$USER/.docker/machine/cache/

good

Maybe you have to set the proxy:
export PROXY="http://my.corp.proxy.ipadd:myport"
export HTTP_PROXY=$PROXY
export HTTPS_PROXY=$PROXY

Because  ping is for ICMP protocal， ICMP not base TCP/UDP。  CURL, NPM, Bower, Composer  is base TCP/UDP, So ping can visit google!
Resolve method:
you can see @Mahmoudz  answer is right!
download the  boot2docker.iso  and replace it ,
Download URL"
https://github-cloud.s3.amazonaws.com/releases/14930729/2a7d9b36-1aba-11e7-951b-a7c27f5bb4fd.iso?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAISTNZFOVBIJMK3TQ%2F20170408%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20170408T003114Z&X-Amz-Expires=300&X-Amz-Signature=fdc5dbbbda03b3233c2efa5cf5cfbd218c454d1dcab2c578cf5f81fbf825b00f&X-Amz-SignedHeaders=host&actor_id=12511107&response-content-disposition=attachment%3B filename%3Dboot2docker.iso&response-content-type=application%2Foctet-stream

It works!

Here is the right link to download boot2docker.iso https://github.com/boot2docker/boot2docker/releases/download/v17.06.0-ce-rc5/boot2docker.iso

The links provided by therajone and GeekHades are down . I managed to download the source version but what now? I tried converting the folder to an iso image but I get
"Unable to get the local Boot2Docker ISO version:  Did not find prefix "-v" in version string" and it tried to download it again which fails with "dial tcp [::1]:443: getsockopt: connection refused". Any ideas?

try to change your DNS server address to <IP_ADDRESS> and <IP_ADDRESS> (google DNS)

I faced that issue recent days but I fixed windows host file that file contains wrong pointing

Maybe you have to set the proxy:
export PROXY="http://my.corp.proxy.ipadd:myport"
export HTTP_PROXY=$PROXY
export HTTPS_PROXY=$PROXY

Thanks for the help, while I had http_proxy set in env, HTTP_PROXY not set.
Apparently http_proxy without CAPS is not the same as HTTP_PROXY with CAPS, and the download for boot2docker only read CAPS...
Similar things happen while setting build args when running docker builds, sometimes http_proxy, sometimes HTTP_PROXY, sometimes both works because the execution behind the command looks for either. Better to set both.


Bring inlay hints to razor

The support for inlay hints was brought to LSP v3.17. It would be nice to bring them to the razor editor. It requires only to delegate these hints from C# language server.
C# example:

Current razor state:

Nothing to see here, right)
From razor implementation I expect to have the same capabilities as in "native" C#, e.g. hover and resolving on double click:

Also I should be able to control inlay hints via VS settings:

This is currently blocked on VS platform and Roslyn implementing support.

Roslyn is implementing this in https://github.com/dotnet/roslyn/pull/67319


Error: Cannot find module "leaflet.awesome-markers" in Ionic3

After installing by npm, I imported the module with leaflet in Ionic 3 like below.
import 'leaflet';
import 'leaflet.awesome-markers';
This emits error "Can not find module" like title.
Do you have any idea?

related to #11 we just need to publish a new version to npm
@george-silva


"graphql": "^16.6.0",

msw/data has an issue with  "graphql": "^16.6.0", reverting to 15.5 fixes the issue.
msw v0.46.1 has graphql as dependency
https://github.com/mswjs/msw/commit/8436515fd93e3f372205815b52ffc3a572da2690

Hey, @oteoe.
Could you provide more details on which exact issue happens? A reproduction repository would be nice.


Big fix: device_tracker

Ho All,
the device_tracker shows: Home or Away instead of home or away
It's a cosmetic fix but all states are always low characters... :)

Not just cosmetic as HA is case sensitive. It's a pain to rewrite automations/templates for my device trackers.

Fixed in beta 3 which I hope to release Friday (12/23) or Saturday (12/24)

Hey,
This big is back in latest releaseBeta 13 (2/24/2023)

Get beta 13a uploaded a few hours ago

Get beta 13a uploaded a few hours ago

already installed and solved!

Is 13a what I pulled down last night around 21:00 ET?
--
John Alan
01000011 01110101 01110010 01101001 01101111 01110011 01101001 01110100 01111001 00100000 01101001 01110011 00100000 01110100 01101000 01100101 00100000 01101101 01101111 01110011 01110100 00100000 01110110 01100001 01101100 01110101 01100001 01100010 01101100 01100101 00100000 01100110 01100101 01100001 01110100 01110101 01110010 01100101 00100000 01101111 01100110 00100000 01101001 01101110 01110100 01100101 01101100 01101100 01101001 01100111 01100101 01101110 01110100 00100000 01101100 01101001 01100110 01100101 00101110

On Feb 25, 2023, at 11:01, Peter Oudenes @.***> wrote:
Get beta 13a uploaded a few hours ago
already installed and solved!
—
Reply to this email directly, view it on GitHub https://github.com/gcobb321/icloud3_v3/issues/10#issuecomment-1445148569, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADDD4KFEANNSESNK6IGRYKLWZIUHBANCNFSM6AAAAAATF4OLRA.
You are receiving this because you are subscribed to this thread.

The version you are running is (1) in the device_tracker attributes at the bottom (icloud3 version - v3.0.0b13a) or (2) at the beginning and end of the setup process in the event log.
I uploaded around 9am EST this morning (Saturday)

Got it - thanks!
--
John Alan
01000011 01110101 01110010 01101001 01101111 01110011 01101001 01110100 01111001 00100000 01101001 01110011 00100000 01110100 01101000 01100101 00100000 01101101 01101111 01110011 01110100 00100000 01110110 01100001 01101100 01110101 01100001 01100010 01101100 01100101 00100000 01100110 01100101 01100001 01110100 01110101 01110010 01100101 00100000 01101111 01100110 00100000 01101001 01101110 01110100 01100101 01101100 01101100 01101001 01100111 01100101 01101110 01110100 00100000 01101100 01101001 01100110 01100101 00101110

On Feb 25, 2023, at 12:12, Gary Cobb @.***> wrote:
The version you are running is (1) in the device_tracker attributes at the bottom (icloud3 version - v3.0.0b13a) or (2) at the beginning and end of the setup process in the event log.
I uploaded around 9am EST this morning (Saturday)
—
Reply to this email directly, view it on GitHub https://github.com/gcobb321/icloud3_v3/issues/10#issuecomment-1445161587, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADDD4KAEYXOI3I7K3UYBWBLWZI4Q3ANCNFSM6AAAAAATF4OLRA.
You are receiving this because you commented.


No SPA tile!

The instructions for adding a redirect URI for MSAL 1.x clients with implicit flow are incorrect. When one creates an App registration then clicks Authentication under Manage there is no SPA tile in sight. Instead the available options are Web, iOS/ macOS, Android and Mobile and desktop applications.

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

ID: 3b4c728e-c34c-cc9e-f3b1-1be4924787cd
Version Independent ID: 197e7ed7-7868-b3c9-a8a8-26bf4e8e708b
Content: Register single-page applications (SPA) - Microsoft identity platform
Content Source: articles/active-directory/develop/scenario-spa-app-registration.md
Service: active-directory
Sub-service: develop
GitHub Login: @hahamil
Microsoft Alias: hahamil

@ejspencer Thank you for your feedback . We will investigate and update the thread.

@ejspencer  Please refer to below screenshot. The option is available as per the instructions:

Under Manage, select Authentication, and then select Add a platform.
Under Web applications, select Single-page application tile.

Hello,
That is not what I see when I use the Azure portal. Even just two minutes
ago, this is what I see.
[image: image.png]
I have cleared my cache without the option appearing. Is there some other
way of accessing it?
Regards,
Emery Spencer
On Fri, May 22, 2020 at 5:30 AM AmanpreetSingh-MSFT <
<EMAIL_ADDRESS>wrote:

@ejspencer https://github.com/ejspencer Please refer to below
screenshot. The option is available as per the instructions:

Under Manage, select Authentication, and then select Add a platform.
Under Web applications, select Single-page application tile.

[image: image]
https://user-images.githubusercontent.com/33834131/82658652-0479f780-9c45-11ea-89f8-c747acf41b64.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/55443#issuecomment-632621107,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADLB6Y65CFPW6AHTJZJY67DRSZH4VANCNFSM4NHRFGQA
.

I'm not see the "Single-page application" option either.

I should add that I am using Azure AD B2C. Maybe that is the issue???

@ejspencer  You can try selecting Single Page Application option under Redirect URI while registering a new application.
@ronswanson22 Yes, in B2C directory you will not get SPA option.


[Doc Improvement][Remove time and future ref: 6].

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/apps-in-teams-meetings/build-apps-for-anonymous-user.md
87
12
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-faq.md
88
16
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-media-capabilities.md
91
6
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-tutorial.md
83
37
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/real-time-media-concepts.md
95
4
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/requirements-considerations-application-hosted-media-bots.md
91
9
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/bot-sso-overview.md
92
11
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-messages.md
85
45
link
:white_check_mark:

msteams-platform/bots/how-to/format-your-bot-messages.md
95
2
link
:white_check_mark:

msteams-platform/bots/how-to/get-teams-context.md
89
7
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/apps-in-teams-meetings/build-apps-for-anonymous-user.md
87
12
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-faq.md
88
16
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-media-capabilities.md
91
6
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-tutorial.md
83
37
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/real-time-media-concepts.md
95
4
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/requirements-considerations-application-hosted-media-bots.md
91
9
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/bot-sso-overview.md
92
11
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-messages.md
85
45
link
:white_check_mark:

msteams-platform/bots/how-to/format-your-bot-messages.md
95
2
link
:white_check_mark:

msteams-platform/bots/how-to/get-teams-context.md
89
7
link
:white_check_mark:

msteams-platform/teams-faq.md
90
80
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/apps-in-teams-meetings/build-apps-for-anonymous-user.md
87
12
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-faq.md
88
16
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-media-capabilities.md
91
6
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-tutorial.md
83
37
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/real-time-media-concepts.md
95
4
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/requirements-considerations-application-hosted-media-bots.md
91
9
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/bot-sso-overview.md
92
11
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-messages.md
85
45
link
:white_check_mark:

msteams-platform/bots/how-to/format-your-bot-messages.md
95
2
link
:white_check_mark:

msteams-platform/bots/how-to/get-teams-context.md
89
7
link
:white_check_mark:

msteams-platform/teams-faq.md
90
80
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/apps-in-teams-meetings/build-apps-for-anonymous-user.md
87
12
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-faq.md
86
19
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-media-capabilities.md
91
6
link
:white_check_mark:

msteams-platform/apps-in-teams-meetings/teams-live-share-tutorial.md
83
37
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/real-time-media-concepts.md
96
3
link
:white_check_mark:

msteams-platform/bots/calls-and-meetings/requirements-considerations-application-hosted-media-bots.md
89
10
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/bot-sso-overview.md
92
11
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-messages.md
85
45
link
:white_check_mark:

msteams-platform/bots/how-to/format-your-bot-messages.md
95
2
link
:white_check_mark:

msteams-platform/bots/how-to/get-teams-context.md
90
6
link
:white_check_mark:

msteams-platform/teams-faq.md
90
81
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/bots/calls-and-meetings/real-time-media-concepts.md
96
3
link
:white_check_mark:

msteams-platform/bots/how-to/authentication/bot-sso-overview.md
92
11
link
:white_check_mark:

msteams-platform/bots/how-to/conversations/conversation-messages.md
85
44
link
:white_check_mark:

msteams-platform/bots/how-to/format-your-bot-messages.md
95
2
link
:white_check_mark:

msteams-platform/bots/how-to/get-teams-context.md
90
6
link
:white_check_mark:

msteams-platform/teams-faq.md
90
81
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.


Capacitor React App "appStateChange" is triggered every time we call BackgroundGeolocation.requestPermission()

Your Environment

Plugin version: 5.2.4
Platform: iOS and Android
Device OS version: Android 11 - ColorOS version 11.1 and iOS version 17.2.1
Device manufacturer / model: OPPO A54  and iphone 15.
Capacitor React App.
"@capacitor/app": "5.0.7",

import { App } from "@capacitor/app";

App.addListener("appStateChange", (isActive) => {
console.log("Status changed", isActive);
}).catch((error) => {
console.error("failed", error);
});

const status  = await BackgroundGeolocation.getProviderState();
if (status !== BackgroundGeolocation.AUTHORIZATION_STATUS_WHEN_IN_USE) {
await BackgroundGeolocation.requestPermission();
}

Expected Behavior
App.addListener("appStateChange", (isActive) => {}); should not get triggered
Also BackgroundGeolocation.requestPermission()
should not trigger the actual requestPermission if permission is already granted. so we don't have to check manually for current permission.
Actual Behavior
App.addListener("appStateChange", (isActive) => {}); gets triggered
BackgroundGeolocation.requestPermission()
gets triggered the actual requestPermission if permission is already granted. so we have to check current permission everytime.
Steps to Reproduce

add a "appStateChange" listener and log message on event capture.
call BackgroundGeolocation.requestPermission().
check for log message of appStateChange event

Context
Enable disable a Toggle button to allow accessing location permission for our Capacitor React app.

That's correct.  See api docs Config.disableLocationAuthorizationAlert.

the thing is that this also happens if we already have the permission. so i think the BackgroundGeolocation.requestPermission() function should check first internally if (await BackgroundGeolocation.getProviderState()) === BackgroundGeolocation.AUTHORIZATION_STATUS_ALWAYS and then do nothing.

The plug-in executes an Android function to ensure the device settings are compatible with the plug-ins requirements.  This requires an invisible Android activity to be shown, which causes your app to briefly report entering the background.  This is expected.
If you don't want this compatibility check to be performed, see api docs Config.disableLocationAuthorizationAlert.

ok thanks for the clearification


ValueError: image has wrong mode

Workflow link
2024-09-09 20:08:27.408 | INFO     | website_diff.cli:main:81 - Highlighting new images
2024-09-09 20:08:27.408 | INFO     | website_diff.cli:main:83 - Highlighting new image chapter_1_files/figure-html/unnamed-chunk-15-1.png
Traceback (most recent call last):
  File "/home/runner/.local/lib/python3.10/site-packages/website_diff/cli.py", line 84, in main
    wd.target.image.highlight_add(os.path.join(new, img), os.path.join(diff, img))
  File "/home/runner/.local/lib/python3.10/site-packages/website_diff/target/image.py", line 39, in highlight_add
    _highlight_image(filepath, filepath_out, "limegreen", 0.5)
  File "/home/runner/.local/lib/python3.10/site-packages/website_diff/target/image.py", line 46, in _highlight_image
    bw = ImageEnhance.Color(img).enhance(0.0).convert("RGBA")
  File "/home/runner/.local/lib/python3.10/site-packages/PIL/ImageEnhance.py", line 40, in enhance
    return Image.blend(self.degenerate, self.image, factor)
  File "/home/runner/.local/lib/python3.10/site-packages/PIL/Image.py", line 3540, in blend
    return im1._new(core.blend(im1.im, im2.im, alpha))
ValueError: image has wrong mode

To reproduce locally, use https://github.com/joelostblom/viz-oer/tree/1a0c1bcd8f34c24f9bc9e5b2b0ffdf0a35ca5876 and run website_diff --old . --new pull28/textbook/_book --diff diff28

If the goal of this line:
bw = ImageEnhance.Color(img).enhance(0.0).convert("RGBA")

is only to convert the image to black and white, then maybe something like this can be used instead?
bw = img.convert("LA").convert("RGBA")

This works for me locally with the image that caused the error above.

Thanks Joel, I made a PR with the change. Tested working.

Great! I made the change in a branch as well and it has been working fine for the diffs I have created so far, but I don't have that much experience with pillow so wasn't 100% if there was some corner case behavior that would be different. But from my side, I like the fix


OSX support

Thanks for this awesome project. Just got a dobot and will be updating it to using your firmware. My q is, do you know if your python sdk will work if it is used on osx? I think I will try to update the firmware on windows because I don't see any other way, but I'm hoping to use this arm primarily on OSX.

My main development environment is OS X. Currently only Python 2.7 is supported, so as long as you got that everything should work out of the box.
There is an option to flash the firmware in a *nix OS if you have Arduino IDE installed or just avrdude - have a look at the https://github.com/maxosprojects/open-dobot/blob/master/firmware/fpga/upload-external-hex.sh script. All you need to do is to point it to where Arduino/avrdude is installed (the default Arduino location in OS X is already in the script) and the serial port name that Arduino shows up in your system (depending on your laptop's model only the number may change).

Oh boy, that made my night.
I updated the device location in /dev in the script, but looks like I supply the path to a .hex. That hex is included in the repo?

Yep, under releases - https://github.com/maxosprojects/open-dobot/releases - take the latest

Awesome! worked like a charm

Close this issue when you feel it is resolved


Adding Products to an Order on the Order Dialog

Hi,
I am trying to replicate the Northwinds order dialog, where you can add order details to the order. I have replicated everything required, however, I am getting a typescript error, saying that getLookup does not exist on type 'typeof StockProductsRow'.
I have added this function the the Stock.StockProductsRow.ts file in common/imports/servertypings, but it gets removed every time I build the templates, hence why I am getting an error to say it is missing. Is there a reason this is removed? I assume it is rebuilt, and getting removed. If so, where do I place the function, or an override file for this?
Many Thanks,

@shaunbsoft I think your StockProductsRow needs a declaration of LookupScript on your details - pay close attention to the Declarations on your properties. Also make sure your values and types  match the Northwind example between StockProductsRow and StockProductsColumn.  The server typings do not need to be edited they are auto generated every time you build the T4.

Long story short, make sure there is a [LookupScript()] on the StockProductsRow.cs


how to create a long time stream by loadbalance round_robin

Is your feature request related to a problem? Please describe.
I have many client and many server ,I use the fakeResolver to update the sever ip and port.
Now the client need long time stream to watch the server ， the server don't close the stream and can send the data to client without delay.
rpc Listen (Command) returns (stream Data)
the lb_policy is round_robin, so the Listen stream is random，how client  send the listen to all the server(and the server is change sometimes) to wath all the server
Describe the solution you'd like
I want server can actively send data to client
Describe alternatives you've considered
Do I need to do load balancing myself ，to solve the problem
Additional context
Add any other context about the feature request here.

What language is this for?

I use the cpp

@lantian20060901 : Can you please explain why you would want all the servers to get the "Listen()" RPC call? Is this a requirement?

Your requirement looks valid but it looks like you are doing it in a strange way. There seems to be two things you probably want to reconsider

Fake resolver is usually for tests. If you have dynamic server ip and port, consider making the addresses available to gRPC with either your DNS or grpclb.
round_robin policy seems to be achieving what you want in terms of "to watch all the servers". It is NOT random. Say you have 100 servers for a channel and start 100 stream calls on the channel, each server will serve exactly 1 stream. Note that in case you want to be able to tell which stream is for which server, you will need to have some application-level metadata; gRPC does not tell you that by definition of "load balancing".

I am closing this issue since this looks more like a question than an issue. Following gRPC process, if you have further question related to this thread, please post the question on the mailing list.


How do I remove the white edge at the bottom of the screen?

Hi,  How do I remove the white edge at the bottom of the screen?
As shown in the figure:
https://raw.githubusercontent.com/wming126/MarkDownImage/master/edge.png
Thanks!
你好，请问如何去除vim屏幕底部的白边？如下图所示：
https://raw.githubusercontent.com/wming126/MarkDownImage/master/edge.png
非常感谢！

When I full screen the vim , there is a white edge at the bottom of the screen.

I have the same issue.. Did you find anything out? Probably have narrow down what variable is causing this change..

What system are you using? I didn't see the "white edge" on my mac (MacBook Pro (Retina, 15-inch, Mid 2015))

My system is Ubuntu 16.04.3.

@wming126 it looks like the borders you show us are from your terminal emulator. Please have a look at the settings of your "gnome-terminal', look for "show scrollbars" or if you use another terminal emulator for settings like these. Disable the scrollbars should fix it.

It is definitely a terminal emulator issue. I experience the same problem when running eiter gnome-terminal or st(suckless terminal), but not with lxterminal. (Note that I have scrollbars disabled in all of these).
I am also on Ubuntu 16.04.03

This is more an OS/Vim issue, than a problem with this configuration.


Tunnel mix-up with multiple ngrok Instances

What happened
We use the ngrok ingress controller to expose a local kind cluster endpoint (Kubernetes in Docker) for connecting with an external service. Every developer has their own local setup with an ngrok ingress controller running. Things work fine with just one ngrok controller, but when there are two, we notice the routing mix-up. My domain's traffic ends up at my coworker's station.
I've followed the setup guide on this GitHub repo and not sure if I missed something or if it's a controller issue.
Can sharing logs or more info help fix this?
What you think should happen instead
Traffic from my ngrok domain should route to my tunnel.
How to reproduce
No response

Thanks for the report!
I think that what you're describing is a controller issue, and I think that we have to fix something on our end.
I can reproduce the issue you're describing.
As a workaround, if everyone uses either a different k8s namespace, or a different ngrok account, that should avoid this issue. Those are only workarounds though, I do think the controller should ideally support what you're trying to do now (even though it doesn't currently).
So, why does this issue happen?
The way the ingress controller works under the hood is creating labeled tunnels and edges that match those labels.
The labels currently used are:
https://github.com/ngrok/kubernetes-ingress-controller/blob/c4387eac3270d373fd64efd351fd89e614acef3d/internal/store/driver.go#L653-L660
The edge similarly has a backend that matches those labels.
That means two different clusters with the ingress controller that have the same k8s service name, k8s service port, and k8s namespace will be identically matched or not matched by edges.
The ingress controller does have a "manager name" option which seems like it could potentially help here, but the "manager name" isn't used for tunnel labels, so it doesn't help here.
cc @nikolay-ngrok I'm curious on your take here.
Do you think we should add the "manager name" label for tunnel + edge labels too so that if people set different manager names they don't get cross-routing?
Should we have a different label for it? Should we have both the manager label, and a new "k8s-cluster-id" label?
Also, to spitball an alternative option, I think using the k8s service uid as a label, instead of trying to generate a unique selector combination by combining namespace+port+name, would also fix this, since uids will be unique.

@euank
Thanks for the quick reply and explanation!
The workarounds you discribed will not work in our case unfortunatelly.
Happy to wait for this to be fixed if it's not too difficult.

Also, to spitball an alternative option, I think using the k8s service uid as a label, instead of trying to generate a unique selector combination by combining namespace+port+name, would also fix this, since uids will be unique.

Yeah, I like this approach better than adding the manager name to the set of labels, since you'd then have to verify uniqueness across disjoint k8s clusters, which feels wrong to me.

Hey guys, is there an ETA for the next release that includes this fix?


Support custom EVM network

Our project need to handle multi-chain deployment. I write a deploy script to "normal" EVM chains like Polygon, Binance, etc. But we need to support deployments to chains like Reef and Astar for ex. I really like hardhat-deploy and i want to continue use it to those deployments.
The problem is that, for example Reef blockchain, have they own hardhat-reef plugin to use with hardhat. Currently, they extends stuff to configuration and the signers, chainId, provider, etc, are obtained a little different. Idk if exist support to this in any way. I know when run the deploy task, the chainId is tried to be obtained, and that is not posible with the normal way.
There are a lot of chains that we want to deploy in our roadmap that have their "peculiarity" to deploy with hardhat. Basically, idk if there a way to handle those scenarios, because i would like to use this and the features when deploy.
Is there any way to handle this or override those funcionalities? I need changes some of them, like getChainId, getAccounts, provider...
The only way that i can deploy is write my own deploy script but without any of features of the hardhat-deploy. So if there no support for something that i describe, i'll have to replicate the feature that save the deployment to they own folder atleast
Hopefully i explained myself correctly (english is not my native language). Thanks for your job :)

Hey @NanezX thanks for creating this issue.
It feels to me like this should be solved at a lower level.
hardhat plugin system is not very extensible but I ll push hardhat to improve there so we can for example modify the rpc request.
This would let you create a plugin that would make hardhat-deploy work on your chain.
Though I am not exactly sure of the incompatibility you are talking about. maybe you have concrete example ?
hardhat-deploy is working on zksync support and this required changes to hardhat-deploy, but ideally I would have prefered for this to be done at a lower level. If that is not possible, hardhat-deploy could expose hooks.

Thanks for answering.
Yeah, i can provide some examples about how Reef work with their own plugin called @reef-defi/hardhat-reef. This plugin handle the RPC, provider, and signers. One of the peculiarities in this chain with the plugin is on Signers. They have a reefSigner type since use mnemonic instead private keys to each account, is compatible with hardhat yes. That is already handle it by the reef plugin.
Another example is -  we cannot acces to the provider as normal. It is necessary create the this with the endpoint or url that we have in the hardhat config. There are the reef_mainnet and reef_testnet. In this same way, we need to get first the provider if we want to call getChainId() or access to the network in hardhat config.
All this features are made through the HardhatRuntimeEnvironment because reef is extended to here:
// This get all the signers defined in seeds fields (which is the equivalent to accounts in Reef)
const signers = await hre.reef.getSigners()
// Get the address of the signer
const address1 = await signers[0].getAddress();
// Get the signer `deployer` if it is specified in the network config
const deployer = await hre.reef.gerSignerByName("deployer ");

// - Contracts
// Get the factory of contract named "Greeter"
const GreteerFactory = await hre.reef.getContractFactory("Greteer");
const greeter = await GreteerFactory.deploy();
// Get a contract with a address
const contract = await hre.reef.getContractAt(GreteerFactory, greeter.address);

Those examples are how reef plugin work in surface of course, but show the differences.
I know this can be too much (idk). But i feel that i can handle it in some way, still using the features that i want and have the repo as deploy multichain. In any case, if you can point me in right direction, I'm for sure able to try it.
I would have prefered for this to be done at a lower level What do you mean with this?
If that is not possible, hardhat-deploy could expose hooks. Do you have a reference for this? And not sure about this

Just a quick reply

"I would have prefered for this to be done at a lower level"

Basically, having the reef plugin made to hijack call to eth_sendRawTransaction to implements its own signing, so other plugon do not need to care.

Ok, I'll work on it and let you know if I got stuck or something. Thanks

hi, is there an update? 👯
zksync is on testnet! soon mainnet!


Timezones in the meeting dates

The meetings are in fake UTC time right now; this is not ideal.

We're using the campus to get an approximate time zone right now; unclear if this is sufficient.


updating npm in Github Actions, under Windows runs into permission error

See https://github.com/adobe/aio-cli/actions/runs/4044448654/jobs/7458276549
We will need a separate way to update npm:

https://github.com/actions/setup-node/issues/324
https://github.com/actions/setup-node/issues/213

PR #392


Unittests

Add unittests when practical for tools.
Let's make a tests/ folder and throw them in there.

Fully agreed.
first problem found: unit testing with command line arguments is difficult, and can massively simplified after passing argparsable arguments as func params. This should be a high priority feature, not only for its usfulness, but also for its ability to enable better tests.


Make header bar look nicer

I got some feedback that the header bar looks a little empty and the homepage button is not obvious that it goes back to the homepage.
We could take some inspiration from the Peoplesoft header bar:

Done with PR #112


#192

Merge checklist

[ ] TravisCI tests passed
[ ] Documentation

Codecov Report

Merging #197 (183457d) into master (dc505fa) will increase coverage by 0.012%.
The diff coverage is 28.571%.

@@              Coverage Diff              @@
##            master      #197       +/-   ##
=============================================
+ Coverage   27.454%   27.467%   +0.012%
=============================================
  Files            4         4
  Lines          601       608        +7
=============================================
+ Hits           165       167        +2
- Misses         436       441        +5


The DNS name is the internal dns of  EC2

I use marathon api to launch a docker app which has webapp in it,
But in marathon UI the instance's hosname is "XXX.ec2.internal:31031",
So I can not redirect to target web service by click the port link in UI,also I don't even know the external IP of this web app,how could I get  this external IP of mesos slave

Marathon uses the hostname that it gets with the offer from Mesos. You can configure the slave to use a different hostname by setting the --hostname flag. I'll close this, as it is not a Marathon issue.

could you write down the full command? thank you

mesos-slave --hostname=your-hostname

Thank you


Response latency significantly increased after upgrade from v0.7.4 to v0.8.0

Seem there is an issue with performance have been introduced in version v0.8.0 or there were some changes in default server settings.
Comparing versions v0.7.4 and v0.8.0 there are about 25%-80% of latency difference (on different tests).

v0.7.4

Running 30s test @ http://localhost:8080/
  1 threads and 100 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     8.02ms    0.98ms 126.00ms   99.59%
    Req/Sec    12.54k   278.07    13.01k    71.67%
  Latency Distribution
     50%    7.94ms
     75%    8.15ms
     90%    8.33ms
     99%    8.73ms
  374367 requests in 30.00s, 73.90MB read
Requests/sec:  12477.51
Transfer/sec:      2.46MB

v0.8.0

Running 30s test @ http://localhost:8080/
  1 threads and 100 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency    40.29ms    1.69ms  51.42ms   89.09%
    Req/Sec     2.49k   175.34     2.89k    68.67%
  Latency Distribution
     50%   39.92ms
     75%   40.02ms
     90%   43.47ms
     99%   44.17ms
  74256 requests in 30.02s, 14.68MB read
Requests/sec:   2473.37
Transfer/sec:    500.62KB

To reproduce this issue please use wrk:
 wrk -t1 -c100 -d30s --latency http://localhost:8080/

and following server scripts:

v0.7.4 https://github.com/torinaki/aerys-benchmark/blob/master/aerys/v0.7.4/server-tiny.php
v0.8 https://github.com/torinaki/aerys-benchmark/blob/master/aerys/v0.8/server-tiny.php

The executable bin/aerys that used to be provided in this repo would spawn multiple processes to handle requests. That functionality has been moved to amphp/cluster (a work-in-progress right now, but nearly complete). Undoubtedly we'll include some examples in the future that use that package to handle requests from multiple processes. You can specify the number of workers with the -w flag to bin/aerys (i.e., bin/aerys -w 1 -c server-tiny.php).
In v0.8.0 only a single process handles requests by default. Using the scripts you provided and the commands shown yields the following on my laptop:
v0.7.4: Run using php -dzend.assertions=-1 bin/aerys -w 1 -c server-tiny.php
Running 30s test @ http://localhost:8080/
  1 threads and 100 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     6.88ms    3.91ms 223.73ms   95.88%
    Req/Sec    14.95k     2.25k   17.63k    86.33%
  Latency Distribution
     50%    6.21ms
     75%    6.79ms
     90%    8.18ms
     99%   16.24ms
  446389 requests in 30.01s, 88.12MB read
Requests/sec:  14876.14
Transfer/sec:      2.94MB

v0.8.0: Run using php -dzend.assertions=-1 server-tiny.php
Running 30s test @ http://localhost:8080/
  1 threads and 100 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     7.80ms    3.32ms 228.38ms   99.59%
    Req/Sec    13.02k   453.77    13.89k    75.00%
  Latency Distribution
     50%    7.56ms
     75%    7.97ms
     90%    8.42ms
     99%    9.74ms
  388722 requests in 30.01s, 76.74MB read
Requests/sec:  12954.75
Transfer/sec:      2.56MB

There is some performance penalty in v0.8.0, however we improved some features such as header validation and overall have better abstractions for writing response handlers or middleware, while still maintaining a very high level of performance.

I tried using the current master of amphp/cluster and v0.8.0 with a modified version of your example that uses Cluster::listen() instead of Socket\listen() to share sockets between processes and got the following results, pegging my laptop to 100% CPU during the 30s, so I'm sure better hardware would provide much better results.
Running 30s test @ http://localhost:8080/
  1 threads and 100 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     3.69ms    2.86ms  36.84ms   87.19%
    Req/Sec    29.98k     2.43k   35.79k    69.33%
  Latency Distribution
     50%    2.87ms
     75%    4.36ms
     90%    7.24ms
     99%   14.64ms
  894969 requests in 30.02s, 176.68MB read
Requests/sec:  29811.63
Transfer/sec:      5.89MB

@trowski I see your point with cluster setup, but in my comparison, I'm using only one process, because it will show how good single core utilization is (it is exactly what I want to achieve with async approach). Aerys\initServer function guarantees that I'm using only one process for Aerys v0.7.4. In case of v0.8.0 i'm not using amphp/cluster.
Also, both versions servers are running using same PHP settings.
Here is complete benchmark report on Travis:
https://travis-ci.org/torinaki/aerys-benchmark/jobs/357887170
You can run the same benchmark using docker:
docker run --ulimit nofile=30000:30000 dmitrybalabka/aerys-benchmark:php71

Ignore the results using amphp/cluster, that was just for an example of what's possible. The first of my posts is comparing single processes only.
I should have looked closer at your v0.7.4 test file, I didn't realize you used initServer, but that actually didn't matter for the benchmark.
v0.7.4: Run using php -dzend.assertions=-1 server-tiny.php
Running 30s test @ http://localhost:8080/
  1 threads and 100 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     6.91ms    4.67ms 258.70ms   99.46%
    Req/Sec    14.86k     1.26k   18.07k    71.33%
  Latency Distribution
     50%    6.48ms
     75%    7.32ms
     90%    8.07ms
     99%   10.48ms
  443601 requests in 30.00s, 87.57MB read
Requests/sec:  14784.99
Transfer/sec:      2.92MB

Nearly the same result as before.
So the real question is: Why do I see similar performance between 0.7.4 and 0.8.0 on my laptop while travis and docker shows such a difference?
I do not have an immediate answer to that question… in fact I got an even bigger performance gap running the docker you provided on my laptop. We clearly must have changed some default setting that is causing a huge performance penalty, but only on certain systems. I'm certain if we fix that setting the performance will be comparable to v0.7.4 on all systems.

The HTTP server process isn't maxed out in that benchmark, but Aerys 0.7.x is on 100% CPU.

@torinaki Can you please update your benchmark to use v0.8.1? I'd like to try running the docker again.

@kelunik, @trowski thanks you! Now it is back to normal. Comparing version v0.8.1 and v0.7.4 I've noticed only about 10% performance degradation.
Full report here: https://travis-ci.org/torinaki/aerys-benchmark/jobs/358118374

@trowski image has been built. Please use:
docker run --ulimit nofile=30000:30000 dmitrybalabka/aerys-benchmark:php71

Don't forget to run docker pull dmitrybalabka/aerys-benchmark:php71 :)

@torinaki php -n enables assertions. For improved performance, you should run with -d zend.assertions=-1.

@kelunik I include all required settings in separate php.ini files like:
https://github.com/torinaki/aerys-benchmark/blob/a1272a7503fc4797d4711c6eaf93260611293d3b/php/default.ini#L1
and load it during each benchmark:
https://github.com/torinaki/aerys-benchmark/blob/aff9a11f62f3edc77f1ee230411f90ffb917a8a1/start_benchmark.sh#L62
I also check that it is really disabled, just to be sure that such approach works:
https://github.com/torinaki/aerys-benchmark/blob/aff9a11f62f3edc77f1ee230411f90ffb917a8a1/start_benchmark.sh#L50

@trowski please hold on. Seems I have overridden the image with the old one. Please pull image again after build: https://travis-ci.org/torinaki/aerys-benchmark/builds/358158491
Sorry about this.


Confused about Support efficient voxel pooling v2

Recently，voxel pooling update code for efficient.(https://github.com/Megvii-BaseDetection/BEVDepth/commit/b150910029607292b44a92f950d4a2cd1f3d8543). I have a confusion about the code. Why use shared memory? In my opinion,     const int sample_x = geom_xyz[thread_sample_idx * 3 + 0];     const int sample_y = geom_xyz[thread_sample_idx * 3 + 1];     const int sample_z = geom_xyz[thread_sample_idx * 3 + 2]; will save value in register, why we save them in shared memory again? Because of different scopes? I mean if delete shared memory, we can not use __syncthreads().

The block configuration is 32x4.  First, we let 1 block(128 threads) loads 128 point coordinates into shared memory. Then we let 1 warp(32 threads) deals with 1 point feature with size num_channel per iteration. In this way, the memory access of the feature tensor is coalesced. We here use shared memory is to speed up the access of point coordinates in the loop after __synthreads().

I know the second loop is for speed up the memory access of the feature, but I do not know why use shared_memory. I guess the shared memory is used for save coordinates, due to two scopes in the funcion(if condition and for loop). I think the second loop can move into the scope of if (thread_sample_idx < total_samples), and the sample_x sample_y sample_z had been in register, this can be easier. Maybe there are some things I haven't considered.

Yes, the two scopes are different. We need to use shared memory to exchange data among threads. And we can not move the second loop into the scope of if (thread_sample_idx < total_samples). Because the first 32 threads in the second loop fetch the first point coordinate while the first 32 threads in the first loop fetch the first 32 point coordinates.


"h is not a function" when noInput prop is set

Describe the bug
Using shortcuts throws an error when no-input prop is set. Error seems to be thrown from close() here.
https://github.com/elreco/vue-tailwind-datepicker/blob/5ee24f0b618000eda07a04221aba79f611deca7d/src/VueTailwindDatePicker.vue#L1066-L1074
To Reproduce
<vue-tailwind-datepicker no-input />

Clicking on any shortcut throws an error.
Expected behavior
N/A
Screenshots

Desktop & mobile (please complete the following information):

N/A
v1.1.8

Fixed in the 1.2.8, thank you


remove unreachable code

fixes some Linting cops:

Lint/UnreachableCode
Lint/Loop
Lint/LiteralInCondition

:+1:

until ignorer
end

?
there are couple of other places dead codes are marked, like the noop resource attribute etc. should we nuke them as well?

:+1: btw

Okay that's enough for today.

Sorry for screaming, but I want a thumbs up / thumbs down just on these edits.  Keep the ADHD turned down low, I'm sure we can all find a million other things to fix.
@chef/client-engineers @chef/client-core review

And @ranjib that's not really directed at you, that's directed at everyone, I just want to keep edits like this very bikeshed low.  There's a huge bikeshed we could open up again for the nth time on having rubocop built into travis and how to go about it, and this isn't the PR to have that discussion again either.
Just trying to use some of the good out of rubocop to slowly improve code quality.

That's fine :+1:

@lamont-granquist no worry :-) i was not asking to do that in this PR, i found couple of marked dead code earlier, and i was not sure whether we can raise PR's to erase them.

:+1:

Yeah if you can find dead code its good to pull it.  However, its always possible that someone may be using the code as a library or subclassing it (particularly in knife code).  This was the only code that static analysis found which was really dead.