text:
Google Colab interactive chart scroll (zoom) in and out

Hi! First off, a huge thanks to Hex and the contributors of the project! Recently learned about the project and it looks very promising!
I am attempting to use VegaFusion in interactive mode in Google Colab using vf.enable_widget().
The versions of Altair and VegaFusion are:
altair version: 5.0.0rc1
vegafusion version: 1.0.4

When creating a bar plot or a scatter plot in Altair, I can zoom in and out using the scroll wheel. This behavior is more important in a scatter plot to zoom in on particular points. However, when I create the same plots with VegaFusion, I am unable to zoom in and out using the scroll wheel. However, on a scatter plot, I am able to experience some interactive behavior with tooltips.
Forgive me if this is a known issue or intended behavior. I checked the documentation and did not see any mention of this functionality. In addition, I searched GitHub issues and was unable to find any similar reports.
I found a reference to Google Colab in this issue, but the issue did not address the scroll behavior:
Support Colab #55
I created a Google Colab notebook to reproduce the issue.
VegaFusion_scroll_issue.ipynb
Thanks so much in advance for the assistance! I appreciate it.

Hi @earlev4, thanks for the kind words and for the helpful bug report.
From the example you shared, it looks like you've omitted the .interactive() call from the two VegaFusion examples. But when I add .interactive(), there seems to be an error. Colab doesn't show the error details, but when I run the example in a local JupyterLab session the following error is displayed:
Failed to create view for 'VegaFusionView' from module 'vegafusion-jupyter' with model 'VegaFusionModel' from module 'vegafusion-jupyter'
Error: Failed to execute 'setAttribute' on 'Element': '0' is not a valid attribute name.
    at form (http://localhost:8890/lab/extensions/vegafusion-jupyter/static/vendors-node_modules_vega_build_vega_module_js.8f81c67f6ad0b4498a8f.js:51444:12)
    at generate (http://localhost:8890/lab/extensions/vegafusion-jupyter/static/vendors-node_modules_vega_build_vega_module_js.8f81c67f6ad0b4498a8f.js:51431:3)
    at bind (http://localhost:8890/lab/extensions/vegafusion-jupyter/static/vendors-node_modules_vega_build_vega_module_js.8f81c67f6ad0b4498a8f.js:51358:3)
    at http://localhost:8890/lab/extensions/vegafusion-jupyter/static/vendors-node_modules_vega_build_vega_module_js.8f81c67f6ad0b4498a8f.js:51641:7
    at Array.forEach ()
    at View.initialize (http://localhost:8890/lab/extensions/vegafusion-jupyter/static/vendors-node_modules_vega_build_vega_module_js.8f81c67f6ad0b4498a8f.js:51640:16)
    at Module.__wbg_initialize_b444e32c71b3bf31 (http://localhost:8890/lab/extensions/vegafusion-jupyter/static/vendors-node_modules_vegafusion-wasm_vegafusion_wasm_js.b537a55d69ab2f4290a1.js:18409:21)
    at __wbg_initialize_b444e32c71b3bf31 (http://localhost:8890/lab/extensions/vegafusion-jupyter/static/remoteEntry.b23969d19fd71caefcbb.js:798:84)
    at http://localhost:8890/lab/extensions/vegafusion-jupyter/static/dab076d032b9a0c57835.module.wasm:wasm-function[114]:0xab51b
    at http://localhost:8890/lab/extensions/vegafusion-jupyter/static/dab076d032b9a0c57835.module.wasm:wasm-function[6049]:0x531b30
chart2 = alt.Chart(cars).mark_point().encode(

I'll dig into it!

Oh!  I think I found the issue.  It's a bit subtle, but Altair 5.0.0-rc1 was updated to use Vega-Lite 5.6.1.  The VegaFusionWidget bundles it's own copy of Vega-Lite, but as of VegaFusion 1.0.4, the version of this copy matches that used by Altair 4.2.0 (Vega-Lite 4.17.0).
This is a good reminder that we should update Vega-Lite in VegaFusionWidget for the next VegaFusion release (which will be 1.1.0).
So here are your current options:

Downgrade Altair to 4.2.0 and add the .interactive() call to the charts before displaying them with VegaFusionWidget.
Wait until next week when we release VegaFusion 1.1.0
Use the VegaFusion Mime Renderer (enabled with vf.enable()) instead of the Widget Renderer. The mime renderer reuses the Altair rendering logic, so it will always use the same version of Vega-Lite that Altair is using. The Mime Renderer provides nearly the same benefit as the widget renderer for charts that don't interactively filter data based on selections.

Hope that helps!  We're planning to do at least one more release candidate for VegaFusion 1.1.0, and I'll ping you when that's available with the updated version of VegaFusionWidget.

Hi @jonmmease! Thank you very, very much for the assistance! I am grateful for your expertise and time.
Your response definitely helps. I tested both options 1 and 3, which worked perfectly.
Looking forward to the next release.
Thanks again! I sincerely appreciate the prompt response and help!

repo: hex-inc/vegafusion


text:
ftpsync return Error 500 Unknown command

this is errmsg:
INFO  Deploying: ftpsync
Setup
Setup complete.

Collecting
ftp.ls failed.
Collection failed.

FATAL Something's wrong. Maybe you can find the solution here: http://hexo.io/docs/troubleshooting.html
Error: 530 You aren't logged in
    at Ftp.parse (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\lib\jsftp.js:233:11
)
    at Ftp.parseResponse (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\lib\jsftp.j
s:148:8)
    at Stream.<anonymous> (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\lib\jsftp.
js:119:24)
    at Stream.emit (events.js:107:17)
    at Stream.reemit (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\ev
ent-stream\node_modules\duplexer\index.js:70:25)
    at Stream.emit (events.js:107:17)
    at Stream.write (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\eve
nt-stream\index.js:192:12)
    at Stream.stream.write (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modu
les\event-stream\node_modules\through\index.js:26:11)
    at Stream.ondata (stream.js:51:26)
    at Stream.emit (events.js:107:17)
    at drain (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\event-stre
am\node_modules\through\index.js:36:16)
    at Stream.stream.queue.stream.push (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsf
tp\node_modules\event-stream\node_modules\through\index.js:45:5)
    at emit (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\event-strea
m\node_modules\split\index.js:35:14)
    at next (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\event-strea
m\node_modules\split\index.js:44:7)
    at Stream.<anonymous> (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modul
es\event-stream\node_modules\split\index.js:49:5)
    at Stream.stream.write (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modu
les\event-stream\node_modules\through\index.js:26:11)
    at Socket.ondata (_stream_readable.js:540:20)
    at Socket.emit (events.js:107:17)
    at readableAddChunk (_stream_readable.js:163:16)
    at Socket.Readable.push (_stream_readable.js:126:10)
    at TCP.onread (net.js:538:20)
FATAL Error: 530 You aren't logged in
    at Ftp.parse (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\lib\jsftp.js:233:11
)
    at Ftp.parseResponse (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\lib\jsftp.j
s:148:8)
    at Stream.<anonymous> (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\lib\jsftp.
js:119:24)
    at Stream.emit (events.js:107:17)
    at Stream.reemit (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\ev
ent-stream\node_modules\duplexer\index.js:70:25)
    at Stream.emit (events.js:107:17)
    at Stream.write (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\eve
nt-stream\index.js:192:12)
    at Stream.stream.write (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modu
les\event-stream\node_modules\through\index.js:26:11)
    at Stream.ondata (stream.js:51:26)
    at Stream.emit (events.js:107:17)
    at drain (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\event-stre
am\node_modules\through\index.js:36:16)
    at Stream.stream.queue.stream.push (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsf
tp\node_modules\event-stream\node_modules\through\index.js:45:5)
    at emit (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\event-strea
m\node_modules\split\index.js:35:14)
    at next (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modules\event-strea
m\node_modules\split\index.js:44:7)
    at Stream.<anonymous> (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modul
es\event-stream\node_modules\split\index.js:49:5)
    at Stream.stream.write (E:\hexo\node_modules\hexo-deployer-ftpsync\node_modules\ftpsync\node_modules\jsftp\node_modu
les\event-stream\node_modules\through\index.js:26:11)
    at Socket.ondata (_stream_readable.js:540:20)
    at Socket.emit (events.js:107:17)
    at readableAddChunk (_stream_readable.js:163:16)
    at Socket.Readable.push (_stream_readable.js:126:10)
    at TCP.onread (net.js:538:20)

The error "530 You aren't logged in" seems clear to me.
Did you set user and pass in _config.yml?

@leesei
yeah, i'm sure i set the both use and pass field, but not works. i use the ftp tools to depoly now , this is too slow but also my pain point, thanks your reply

Can you check the server log?

@leesei when you say check user and pass field  i am serious recheck them becase i can log into host by ftp softwave in the window os then i find the username is not include undersocre when i save the settings, so i try no undersocre on the _config.yml against user field it seems to be work but generate other error:
INFO  Deploying: ftpsync
Setup
Setup complete.

Collecting
Collection complete.

Consolidating
Consolidation complete.

Committing
ftp.put failed.
Additions failed.
Commit failed.
FATAL Something's wrong. Maybe you can find the solution here: http://hexo.io/docs/troubleshooting.html
Error: 500 Unknown command
    at Ftp.parse (E:\hexo-new\node_modules\jsftp\lib\jsftp.js:233:11)
    at Ftp.parseResponse (E:\hexo-new\node_modules\jsftp\lib\jsftp.js:148:8)
    at Stream.<anonymous> (E:\hexo-new\node_modules\jsftp\lib\jsftp.js:119:24)
    at emitOne (events.js:77:13)
    at Stream.emit (events.js:169:7)
    at Stream.reemit (E:\hexo-new\node_modules\duplexer\index.js:70:25)
    at emitOne (events.js:77:13)
    at Stream.emit (events.js:169:7)
    at Stream.write (E:\hexo-new\node_modules\event-stream\index.js:192:12)
    at Stream.stream.write (E:\hexo-new\node_modules\through\index.js:26:11)
    at Stream.ondata (stream.js:31:26)
    at emitOne (events.js:77:13)
    at Stream.emit (events.js:169:7)
    at drain (E:\hexo-new\node_modules\through\index.js:36:16)
    at Stream.stream.queue.stream.push (E:\hexo-new\node_modules\through\index.js:45:5)
    at emit (E:\hexo-new\node_modules\split\index.js:35:14)
    at next (E:\hexo-new\node_modules\split\index.js:44:7)
    at Stream.<anonymous> (E:\hexo-new\node_modules\split\index.js:49:5)
    at Stream.stream.write (E:\hexo-new\node_modules\through\index.js:26:11)
    at Socket.ondata (_stream_readable.js:536:20)
    at emitOne (events.js:77:13)
    at Socket.emit (events.js:169:7)
FATAL 500 Unknown command
Error: 500 Unknown command
    at Ftp.parse (E:\hexo-new\node_modules\jsftp\lib\jsftp.js:233:11)
    at Ftp.parseResponse (E:\hexo-new\node_modules\jsftp\lib\jsftp.js:148:8)
    at Stream.<anonymous> (E:\hexo-new\node_modules\jsftp\lib\jsftp.js:119:24)
    at emitOne (events.js:77:13)
    at Stream.emit (events.js:169:7)
    at Stream.reemit (E:\hexo-new\node_modules\duplexer\index.js:70:25)
    at emitOne (events.js:77:13)
    at Stream.emit (events.js:169:7)
    at Stream.write (E:\hexo-new\node_modules\event-stream\index.js:192:12)
    at Stream.stream.write (E:\hexo-new\node_modules\through\index.js:26:11)
    at Stream.ondata (stream.js:31:26)
    at emitOne (events.js:77:13)
    at Stream.emit (events.js:169:7)
    at drain (E:\hexo-new\node_modules\through\index.js:36:16)
    at Stream.stream.queue.stream.push (E:\hexo-new\node_modules\through\index.js:45:5)
    at emit (E:\hexo-new\node_modules\split\index.js:35:14)
    at next (E:\hexo-new\node_modules\split\index.js:44:7)
    at Stream.<anonymous> (E:\hexo-new\node_modules\split\index.js:49:5)
    at Stream.stream.write (E:\hexo-new\node_modules\through\index.js:26:11)
    at Socket.ondata (_stream_readable.js:536:20)
    at emitOne (events.js:77:13)
    at Socket.emit (events.js:169:7)

Good, at least it can connect now.
Try set verbose to true.
You may need to review the log and redact sensitive info.

@leesei well, when i set verbose to true. i am get the same error when process the commit

verbose is to show more logs, not to fix the issue.

@leesei i know your meaning but the error is still exist i'm sure the setting verbose not to fix the issue

So is the log any difference?

@leesei only errmsg more verbose no difference , this is errmsg:
  '/vendors/ua-parser-js/dist/ua-parser.min.js',
  '/vendors/ua-parser-js/dist/ua-parser.pack.js' ]

  Consolidation complete.

   Committing
   -------------------------------------------------------------
   - /2015/09/16/title/index.html uploaded successfuly
   - /2015/10/06/title/index.html uploaded successfuly
  Additions complete.
  - /2015/08/30/title/index.html uploaded successfuly
  - /2015/08/30/title/index.html uploaded successfuly
  ftp.put failed.
  Updates failed.
  Commit failed.
  FATAL Something's wrong. Maybe you can find the solution here:
   http://hexo.io/docs/troubleshooting.html
  Error: read ECONNRESET
  at exports._errnoException (util.js:870:11)
  at TCP.onread (net.js:552:26)
  FATAL read ECONNRESET
  Error: read ECONNRESET
  at exports._errnoException (util.js:870:11)
  at TCP.onread (net.js:552:26)

source: gharchive/issue

authors: leesei otherfish

repo: hexojs/hexo-deployer-ftpsync

license: MIT

license_type: permissive

license_source: github-api


text:
error when downloading the code

I'm on windows and when I try to download the code chrome says it failed- virus detected

I recommend cloning the repo via git CLI: https://git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository#:~:text=Cloning an Existing Repository. I'm not sure why chrome detected a virus.


text:
[问题咨询]dial tcp 172.20.0.7:3306: connect: connection refused.

问题描述
使用Docker部署，sql上线审核通过后执行报错，连接拒绝
版本信息

应用版本/分支：Release v1.4.5
部署方式：Docker

版本瞎填

repo: hhyo/Archery


text:
ReactiveConnection#close should return a CompletionStage

See the discussion on https://github.com/hibernate/hibernate-reactive/pull/715

I think the main issue is that now ReactiveSessionImpl cannot extend SessionImpl if we change the method for the session as well

I think the main issue is that now ReactiveSessionImpl cannot extend SessionImpl if we change the method for the session as well

I don't think that's an issue at all. ReactiveSessionImpl would have a reactiveClose() method that would be called by StageSessionImpl.close() and MutinySessionImpl.close().

Merged

authors: DavideD gavinking

repo: hibernate/hibernate-reactive


text:
HSEARCH-4804 Fix flaky test OutboxPollingAutomaticIndexingLifecycleIT with postgresql

https://hibernate.atlassian.net/browse/HSEARCH-4804
I'm going blind here since I couldn't reproduce the problem locally, but I think there's a decent chance of at least reducing, if not eliminating, flakiness.
See the commit messages for details.

At least this build didn't fail... I'll merge and see how it goes.

source: gharchive/pull-request

repo: hibernate/hibernate-search


text:
How to disable other credential helpers?

On Windows Server 2019 using:
PS git --version
PS git version 2.39.2.windows.1

with this .gitconfig :
[credential]
	helper = "D:/git-credential-oauth/git-credential-oauth.exe -device"
[credential "https://gitlab.example.com"]
	oauthClientId = redacted
	oauthScopes = read_repository write_repository
	oauthAuthURL = /oauth/authorize
	oauthTokenURL = /oauth/token
	oauthDeviceAuthURL = /oauth/authorize_device

I was expecting not to see any dialogue popping up but I am seeing this:

I then need to close the dialogue without signing in and then I can see the device code flow prompt:

I am able to open the url and enter the code and it works as expected from thereon.
Is the dialogue expected to show if -device is set?

Your first screenshot shows Git Credential Manager https://github.com/git-ecosystem/git-credential-manager
Run git config --get-all credential.helper to see which helpers you have configured.
Then try:
[credential]
	helper =
	helper = "D:/git-credential-oauth/git-credential-oauth.exe -device"
[credential "https://gitlab.example.com"]
	oauthClientId = redacted
	oauthScopes = read_repository write_repository
	oauthAuthURL = /oauth/authorize
	oauthTokenURL = /oauth/token
	oauthDeviceAuthURL = /oauth/authorize_device

following https://git-scm.com/docs/gitcredentials#Documentation/gitcredentials.txt-helper

If credential.helper is configured to the empty string, this resets the helper list to empty

On git version 2.39.2.windows.1 it seems the credential-cache is disabled:
git credential-cache
fatal: credential-cache unavailable; no unix socket support

Thus adding cache --timeout 21600 as a helper won't work.
As an attempt at a workaround I added wincred as a helper and after that I do not reed to reauthorize again and again. Would this be a good workaround on Windows @hickford or does it has some side effects? I guess the token might not be refreshed as expected and I guess it is not technically cached then?
[credential]
        helper =
	helper = wincred
	helper = "D:/git-credential-oauth/git-credential-oauth.exe -device"
[credential "https://gitlab.example.com"]
	oauthClientId = [appId]
	oauthScopes = read_repository write_repository
	oauthAuthURL = /oauth/authorize
	oauthTokenURL = /oauth/token
	oauthDeviceAuthURL = /oauth/authorize_device

Nevermind, I just updated "git for windows" ant it seems credential-cache is now supported on "git for windows" too. I just did not get the impression that this was fixed from the various issues floating around.

authors: hickford joes

repo: hickford/git-credential-oauth


text:
🛑 Kiwi Farms Forum is down

In 47683ab, Kiwi Farms Forum (https://kiwifarms.net) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Kiwi Farms Forum is back up in 5cbf3e2.

repo: hickoryhouse/kf


text:
🛑 Mad at the Internet is down

In 1e8baad, Mad at the Internet (https://madattheinternet.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Mad at the Internet is back up in 2da7505 after 3 minutes.


text:
編集中のまとめリストの順番を変更できない

編集中のまとめリストは削除はできるけど、位置の入れ替えができない。

解決済み 🎏


text:
Compilation error on node 4.x

The socket.io dependency currently fails to install on node 4.x. See https://github.com/socketio/socket.io/issues/2228
Please update and rerelease when a fix for socket.io becomes available. In the mean time https://github.com/alexbuijs/gulp-server-livereload could be used which contains this repo: https://github.com/pmq20/socket.io

Thanks for letting us know.
On 20 September 2015 19:23:21 Alex Buijs notifications@github.com wrote:

The socket.io dependency currently fails to install on node 4.x. See
https://github.com/socketio/socket.io/issues/2228
Please update and rerelease when a fix for socket.io becomes available. In
the mean time https://github.com/alexbuijs/gulp-server-livereload could be
used which contains this repo: https://github.com/pmq20/socket.io

Reply to this email directly or view it on GitHub:
https://github.com/hiddentao/gulp-server-livereload/issues/17

Still seeing this?

No, has been fixed!

authors: alexbuijs hiddentao

repo: hiddentao/gulp-server-livereload

license: mit

license_source: bigquery


text:
onChangeTextProp

This PR is designed to allow for consumers of this component to get the value of the text being entered.  The use case for this is to allow for users to search their api to reload data on longer lists.

Good idea, but I think it needs architecting a little differently. If user wishes to manually filter then the built-in filtering should be turned off for that.

@hiddentao Are you maintaining this library or not. Can you change or make any appropriate actions for this.
Thanks

@nihp See my previous comment. On this, since the modal already has built-in filtering we'd need to do some work to ensure that's disabled when custom filtering is enabled.

authors: hiddentao mbyram1 nihp


text:
Some questions

I am so excited about the project, here I have some questions:

What is ...state used for?
https://github.com/hieudt/redux-tic-tac-toe/blob/master/src/reducers/tictactoe.js#L50

This is export default:
https://github.com/hieudt/redux-tic-tac-toe/blob/master/src/reducers/tictactoe.js#L34

and this is not:
https://github.com/hieudt/redux-tic-tac-toe/blob/master/src/actions/tictactoe.js
What's the difference?

{...initialState} is to return a new copy of initialState object. return {...initialState}; is equivalent to return _extends({}, initialState); where _extends() is created by babel as follow

var _extends = Object.assign || function (target) {
    for (var i = 1; i < arguments.length; i++) {
        var source = arguments[i];
        for (var key in source) {
            if (Object.prototype.hasOwnProperty.call(source, key)) {
                target[key] = source[key];
            }
        }
    }
    return target;
};

export default is to export an expression that will be returned as default when we import its module. Check examples below:

export function setSymbol(index, symbol) {
    return {
        type: types.SET_SYMBOL,
        index,
        symbol
    };
}

export function resetGame() {
    return {
        type: types.RESET_GAME
    };
}

// these two imports are equivalent and known as named import
import * as Actions from '../actions/tictactoe';
import { setSymbol, resetGame } from '../actions/tictactoe';

// reducers/tictactoe.js
export default function tictactoe(state = initialState, action) {
}

// tictactoe is the function above
import tictactoe from 'reducers/tictactoe.js';

authors: hieudt quangbuule

repo: hieudt/redux-tic-tac-toe


text:
New Language Grammar contribution Pine Script

https://github.com/jeyllani/highlightjs-pine

Changes

Added entry into SUPPORTED_LANGUAGES.md
Updated CHANGES.md
Checklist

[x] Added markup tests, or they don't apply here because...
[x] Updated the changelog at CHANGES.md

Is it possible to request a repo to host this grammar ?


text:
[question] D4PG - mujoco implementation

Hi,
Thanks for your RL framework, looks very promising. Currently I am interested in implementation of current RL algorithms. So, I wonder have you already done any experiments with mujoco environments? If so, are there any experiment configs available? For cheetah or humanoid, for example.

Hello,
We don't have any mujoco licence so we did only experiments using pybullet equivalents (that are similar but different).
You can find hyperparameters in the rl baselines zoo. If hyperparameters are not present for a given algo-env tuple, then it means we did not try yet or we did not find suitable hyperparams yet.

@Scitator I've been reproducing MuJoCo style environments in Unity (see https://github.com/Sohojoe/MarathonEnvsBaselines)- I have them training against both OpenAI.Baselines and Stable.Baselines - I tried to keep as close to the OpenAI.Baselines hyperparams as possible.

authors: Scitator Sohojoe araffin

repo: hill-a/stable-baselines


text:
Change to css timeline

Switched to a much better timeline using only CSS for rendering.
Javascript still used to load the data into HTML.

@rahulpatidar0191 Good eye for typos! Thanks!
Any feedback on the overall look?

The overall look is good. Grouping them with emoji is a clever idea.
One very minor thing I noticed is the single points are missing a bullet. For eg: John Cabot is missing a bullet but the next point has it. Again, minor thing

It's actually by design!  :sweat_smile:
I thought it'd be better to separate between one description and multiple but clearly it looks off since you thought it was a mistake.
I'll put a bullet point every time to make it consistent.


text:
Added Named Routes and removed redundant code

I have created named routes for all the screens with onGenerateRoute. I have removed some redundant code also.

@SapinderSingh You just need to create the constant and route page, you can remove all the other files and fixes. I'll create separate issues for that. For now, only constants and route page is required.

So should I close this pull request and create a new request after the edits ?

@himanshusharma89 By the way, I just reformatted some code with the help of commas and VS code's reformatter, removed some comments and a empty constructor and passed the route arguments in routes so that app can work like before. Then also I have to do the edits ?

So should I close this pull request and create a new request after the edits ?

No need to close this PR. Only 2 files are required to be changed but in your PR total 12 files are changed and causing conflicts.
Do git pull, rebase the code to previous version and push the changes.
Note: Only route constants and route page files are required, nothing else.

So should I close this pull request and create a new request after the edits ?

No need to close this PR. Only 2 files are required to be changed but in your PR total 12 files are changed and causing conflicts.
Do git pull, rebase the code to previous version and push the changes.
Note: Only route constants and route page files are required, nothing else.

How can I rebase the code to previous version ?

@SapinderSingh I mentioned in my previous comment that:

Do a git pull, rebase the code to the previous version and push the changes.

Now please check, I have removed all the other files.


text:
:books: move docs to /docs on master branch

Move github pages contents from gh-pages branch to /docs on master branch.

Coverage remained the same at 94.818% when pulling 746a599cac374f488e6738874d88042d389915b0 on move_ghpages_to_docs into ba1335956d47b9b0caaf91e90b214408c1a58022 on master.

This pull request makes more maintainable the github page contents, I think 👍

Coverage remained the same at 94.818% when pulling 36e5e78479861176470cb8dae0ea1d9213f7fa4a on move_ghpages_to_docs into ba1335956d47b9b0caaf91e90b214408c1a58022 on master.

authors: coveralls hirakiuc

repo: hirakiuc/tinybucket


text:
feat: improved text area and put ymldata top level where used

Hello 🍉
In this PR:

added a char counter to the text are in the from
added validation on description for trimmed value and also validated after removing all consecutive whitespaces
moved all yml parse in top level to not re-trigger it every time a request is made.

Good to go, thanks

authors: amedeomajer jgengo

repo: hivehelsinki/tech-report


text:
galore 可否訓練 embedding layer?

Reminder

[X] I have read the README and searched the existing issues.

Reproduction
現有 implementation 只針對 Linear layer, embedding layer 適用嗎？
Expected behavior
No response
System Info
No response
Others
No response

不建议对 embedding 使用 GaLore

多謝回應！

authors: hiyouga indiejoseph

repo: hiyouga/LLaMA-Factory


text:
如何从checkpoints 完整复原出 optimizer,model 等的训练时的状态，使其可以从中断点继续训练

Reminder

[X] I have read the README and searched the existing issues.

System Info

llamafactory version: 0.9.0
Platform: Linux-5.4.0-193-generic-x86_64-with-glibc2.31
Python version: 3.11.9
PyTorch version: 2.4.0+cu121 (GPU)
Transformers version: 4.43.4
Datasets version: 2.20.0
Accelerate version: 0.32.0
PEFT version: 0.12.0
TRL version: 0.9.6
GPU type: NVIDIA A100-PCIE-40GB
DeepSpeed version: 0.14.4
vLLM version: 0.6.0

Reproduction
以下是我的yaml文件
model_name_or_path: /llama_models/Meta-Llama-3.1-70B-Instruct
adapter_name_or_path: /home/jovyan/workspace/code/honor-tsinghua-honor/llm_8card_code/LLaMA-Factory-main_my_____/saves/llama3.1-70b-bf16/40intent/behavior_0927_40intent_test_no_label_no_history/checkpoint-904
stage: sft
do_train: true
finetuning_type: lora
lora_target: all
do_eval: true
deepspeed: examples/deepspeed/ds_z3_config.json
dataset: behavior_0927_40intent_few_shot_20tiao_for_70B
template: llama3
cutoff_len: 1024
max_samples: 750000
overwrite_cache: true
preprocessing_num_workers: 16
eval_dataset: behavior_0927_40intent_test
per_device_eval_batch_size: 8
eval_on_start: true
eval_strategy: steps
eval_steps: 5
per_device_train_batch_size: 2
gradient_accumulation_steps: 8
learning_rate: 5.0e-6
num_train_epochs: 2.0
lr_scheduler_type: cosine_with_min_lr
warmup_ratio: 0.1
bf16: true
ddp_timeout: 180000000
lr_scheduler_kwargs:  {'min_lr': 1.0e-6}
output_dir: saves/llama3.1-70b-bf16/40intent/behavior_0927_40intent_few_shot_no_label_no_history_self
logging_steps: 1
save_steps: 5
plot_loss: true
overwrite_output_dir: true
Expected behavior
模型在训练完2轮后观察其loss曲线随步数单调递减，没有收敛的迹象，于是加载最后的checkpoints点，并使用较小的学习率（为上一次训练的最小学习率）来接着训练模型，但是接着训练后模型loss会一直增加，请问该如何做才能完美的恢复checkpoints的训练时的状态然后让loss曲线继续沿着之前的趋势下降呢？（查了参数文档，save_only_model默认是false,按理来讲我应该可以恢复出包括optimizer在内的所有model的状态？）希望可以帮忙解答，谢谢！
Others
No response

同问，有解决办法了吗？ @mfj9999

使用resume参数可以断点续训，但是只能沿着之前的学习率来进行断点续训，没法更改之前的学习率等其他参数设置

使用resume参数可以断点续训，但是只能沿着之前的学习率来进行断点续训，没法更改之前的学习率等其他参数设置

请问resume参数在哪里？

authors: QinziLi-nanan mfj9999 tszslovewanpu


text:
RM多卡训练报错

RM单卡训练正常，多卡训练报如下错误：
RuntimeError: Expected to mark a variable ready only once. This error is caused by one of the following reasons: 1) Use of a module parameter outside the forward function. Please make sure model parameters are not shared across multiple concurrent forward-backward passes. or try to use _set_static_graph() as a workaround if this module graph does not change during training loop.2) Reused parameters in multiple reentrant backward passes. For example, if you use multiple checkpoint functions to wrap the same part of your model, it would result in the same set of parameters been used by different reentrant backward passes multiple times, and hence marking a variable ready multiple times. DDP does not support such use cases in default. You can try to use _set_static_graph() as a workaround if your module graph does not change over iterations.
Parameter at index 319 has been marked as ready twice. This means that multiple autograd engine  hooks have fired for this particular parameter during this iteration. You can set the environment variable TORCH_DISTRIBUTED_DEBUG to either INFO or DETAIL to print parameter names for further debugging.

@zhaochs1995 你好，请问后来解决了没


text:
Result keeps returning "AccessDenied" when using "StartRecordingAsync" method

I'm trying to use StartRecordingAsync and StopRecordingAsync method to record a video. But I can never record it and while I was debugging I realized, result always returned AccessDenied right after StartRecordingAsync starts. In the code below I put a couple debug statements: Debug.WriteLine("before recording result " + result); and Debug.WriteLine("Start recording result " + result);. And for the first debug statement the result returns Success. But for the second debug statement which is right after the StartRecordingAsync method is used, the result returns AccessDenied.
var result = CameraResult.Success;
var uniqueId = Guid.NewGuid().ToString();
var fileName = $"{DateTime.Now.Ticks}_{uniqueId}.mp4";
videoFilePath = Path.Combine(Path.Combine(FileSystem.Current.CacheDirectory, fileName));
Debug.WriteLine("before recording result " + result);

// Start video recording
result = await cameraView.StartRecordingAsync(Path.Combine(FileSystem.Current.CacheDirectory, videoFilePath));

 Debug.WriteLine("Start recording result " + result);

The part where I'm confused is that the code inside the StartRecordingAsync method doesn't directly return AccessDenied. This is the code in StartRecordingAsync method.
public async Task<CameraResult> StartRecordingAsync(string file, Size Resolution = default(Size))
        {
            CameraResult cameraResult = CameraResult.AccessError;
            if (Camera != null)
            {
                if (Resolution.Width != 0.0 && Resolution.Height != 0.0 && !Camera.AvailableResolutions.Any((Size r) => r.Width == Resolution.Width && r.Height == Resolution.Height))
                {
                    return CameraResult.ResolutionNotAvailable;
                }

                if (base.Handler != null)
                {
                    CameraViewHandler cameraViewHandler = base.Handler as CameraViewHandler;
                    if (cameraViewHandler != null)
                    {
                        cameraResult = await cameraViewHandler.StartRecordingAsync(file, Resolution);
                        if (cameraResult == CameraResult.Success)
                        {
                            BarCodeResults = null;
                            OnPropertyChanged("MinZoomFactor");
                            OnPropertyChanged("MaxZoomFactor");
                        }
                    }
                }
            }
            else
            {
                cameraResult = CameraResult.NoCameraSelected;
            }

            return cameraResult;
        }

Does anyone know where the AccessDenied is coming from? I'm using Android so I put all the permissions in the AndroidManifest file such as permission for camera, record_audio, and record_video.

I just found out, in the Android file, there is a code for StartRecordingAsync that returns AccessDenied when permission is not granted. So I utilized that to see what permission I didn't have and it turned out storage write permission is false. But I'm using Android 13.0 (API level 33) and even though I ask for storage write permission, it doesn't show up. I did some more research on this and figured out that at that API level, there is no need for the storage write permission. But if that is the case how can I make the boolean value for storage write true? Because, right now, I can't use StartRecordingAsnyc because the debug statement returns to be AccessDenied and the reason for that is because the storage write permission is false.
internal async Task<CameraResult> StartRecordingAsync(string file, Microsoft.Maui.Graphics.Size Resolution)
    {
        var result = CameraResult.Success;
        if (initiated && !recording)
        {
            if (await CameraView.RequestPermissions(true, true))
            {
                if (started) StopCamera();
                if (cameraView.Camera != null)
                {
                    try
                    {
                        camChars = cameraManager.GetCameraCharacteristics(cameraView.Camera.DeviceId);

                        StreamConfigurationMap map = (StreamConfigurationMap)camChars.Get(CameraCharacteristics.ScalerStreamConfigurationMap);
                        videoSize = ChooseVideoSize(map.GetOutputSizes(Class.FromType(typeof(ImageReader))));
                        recording = true;

                        if (OperatingSystem.IsAndroidVersionAtLeast(31))
                            mediaRecorder = new MediaRecorder(context);
                        else
                            mediaRecorder = new MediaRecorder();
                        audioManager.Mode = Mode.Normal;
                        mediaRecorder.SetAudioSource(AudioSource.Mic);
                        mediaRecorder.SetVideoSource(VideoSource.Surface);
                        mediaRecorder.SetOutputFormat(OutputFormat.Mpeg4);
                        mediaRecorder.SetOutputFile(file);
                        mediaRecorder.SetVideoEncodingBitRate(10000000);
                        mediaRecorder.SetVideoFrameRate(30);

                        var maxVideoSize = ChooseMaxVideoSize(map.GetOutputSizes(Class.FromType(typeof(ImageReader))));
                        if (Resolution.Width != 0 && Resolution.Height != 0)
                            maxVideoSize = new((int)Resolution.Width, (int)Resolution.Height);
                        mediaRecorder.SetVideoSize(maxVideoSize.Width, maxVideoSize.Height);

                        mediaRecorder.SetVideoEncoder(VideoEncoder.H264);
                        mediaRecorder.SetAudioEncoder(AudioEncoder.Aac);
                        IWindowManager windowManager = context.GetSystemService(Context.WindowService).JavaCast<IWindowManager>();
                        int rotation = (int)windowManager.DefaultDisplay.Rotation;
                        int orientation = ORIENTATIONS.Get(rotation);
                        mediaRecorder.SetOrientationHint(orientation);
                        mediaRecorder.Prepare();

                        if (OperatingSystem.IsAndroidVersionAtLeast(28))
                            cameraManager.OpenCamera(cameraView.Camera.DeviceId, executorService, stateListener);
                        else
                            cameraManager.OpenCamera(cameraView.Camera.DeviceId, stateListener, null);
                        started = true;
                    }
                    catch
                    {
                        result = CameraResult.AccessError;
                    }
                }
                else
                    result = CameraResult.NoCameraSelected;
            }
            else
                result = CameraResult.AccessDenied;
        }
        else
            result = CameraResult.NotInitiated;

        return result;
    }
    ```

I have the same problem.  Does StartRecordingAsync support Android API 33?

I have the same problem. Does StartRecordingAsync support Android API 33?

I have no clue yet. I use Android API 33 as well and went on some debugging and realized that it's because the storage write permission is false. But I'm confused because for an Android 13 (API 33) device you do not need to request write permissions as you have it by default.

Hi Blue,
If I remove the write permission from the Android manifest the control errors out complaining that it is missing.

Yes. You need to have <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> to use StartRecordingAsync method or it will give an error. It's just that unlike other permissions WRITE_EXTERNAL_STORAGE doesn't show a popup that requests the user to manually give permission so I'm confused how to change the value from false to true

Hi bluedrakim
Thanks for the heads-up on the permissions.  Have you found a workaround to this problem?  I am not sure this plugin is still supported. :(

@mancda you can use  MediaPicker.Default.CaptureVideoAsync();

My guess your problem is the resolution size you are setting.  For example, when I do this it works:
var result = await cameraView.StartRecordingAsync(Path.Combine(directory, "Video.mp4"), new Size(1920, 1080));
When I do this it fails with the AccessError:
var result = await cameraView.StartRecordingAsync(Path.Combine(directory, "Video.mp4"), cameraView.Camera.AvailableResolutions.First());

authors: bluedrakim mancda minhiclick thedee


text:
🛑 Reime ohne Sinn und Verstand is down

In 198ebe0, Reime ohne Sinn und Verstand (https://www.reimeohnesinnundverstand.de) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Reime ohne Sinn und Verstand is back up in 1a87a84 after 8 minutes.

repo: hjstrauss/MonitorMySites


text:
🛑 LM Bogen WSV is down

In a5546b2, LM Bogen WSV (https://www.lmbogenwsv.de) was down:

HTTP code: 0
Response time: 0 ms

Resolved: LM Bogen WSV is back up in e4c8e47 after 7 minutes.


text:
🛑 Opa Hansi is down

In b4005ef, Opa Hansi (https://www.opahansi.de) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Opa Hansi is back up in 526a9cb after 17 minutes.


text:
Pop-up doesn't show if there are any events in non-journal pages

Hi!
I have some templates for events planned for a day that contain blocks with start-time and end-time properties.
Since update to 2.0, the calendar pop-up won't show up, unless I remove those templates. I mentioned that problem in #9 , but since I was able to confirm it to be unrelated, I've created a new issue.
Here is the an example of an error from a developer console:
Uncaught (in promise) Error: No page found
    at dA (index-a40ab97e.js:102:168)
    at async Object.show (index-a40ab97e.js:102:905)
dA	@	index-a40ab97e.js:102
await in dA (async)
(anonymous)	@	index-a40ab97e.js:28

Here is (as far as I understand) relevant code:
        const o = await logseq.Editor.getPage(i[0].page.id);
        if (!o || !o.journalDay)
            throw new Error("No page found");

It seems to me, although I'm not sure I'm getting it right, that the logic here might be flawed. Instead of skipping non-journal pagesm the code throws an error when it encounters one. Am I missing something? Is it intentional?

v2.0.1 should fix this issue.

authors: hkgnp weaselshit

repo: hkgnp/logseq-calview-plugin


text:
May one pair (stereo) not group players also via node-red or only via sonso app?

I'm looking for an oportiunity to pair two players to form a stereo pair, not only a group playing the same mono channel. Is there already a feature in the contrib package available, like the pairing from the sonos app?
Thank you in advance for your assistance...

There is a command, but no description. I need a description how to set up it.
paring

Whom may one ask top obtain this information?

I found this Python Script:
https://github.com/erikmansson/pair-sonos
May you find the required information in there?

Yes, thats exactly what i need. In the next days I am going to publish 2.0.1 including the commands. I let you know how to use.

Great, thank's a lot. Looking forward...

Hi. I just published 2.1.0 with create_stereopair and seperate_stereopair in "Control Player" node.
To pair two players, they have to be the same model and we need the so called uuid. The flow gets the uuid from the first player (get_property), moves the data to the right place and then start the pairing with that data. I could NOT test it as I don't have 2 player of same type.
[{"id":"46e04a29.ea75f4","type":"inject","z":"99e6906e.c69df","name":"","topic":"","payload":"get_properties","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":540,"wires":[["a2d2d0be.38181"]]},{"id":"a2d2d0be.38181","type":"sonos-get-status","z":"99e6906e.c69df","confignode":"a1fa48a2.6e0c98","name":"player left","x":261,"y":540,"wires":[["320d05ad.4dcd0a"]]},{"id":"320d05ad.4dcd0a","type":"change","z":"99e6906e.c69df","name":"create stereopair","rules":[{"t":"set","p":"topic","pt":"msg","to":"uuid","tot":"msg"},{"t":"set","p":"modelName","pt":"msg","to":"payload.modelName","tot":"msg"},{"t":"set","p":"payload","pt":"msg","to":"create_stereopair","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":431,"y":540,"wires":[["12b0b905.cb9827"]]},{"id":"12b0b905.cb9827","type":"sonos-control-player","z":"99e6906e.c69df","confignode":"32a98882.56e1c8","name":"player right","x":583,"y":467,"wires":[["47f082f6.abd44c"]]},{"id":"47f082f6.abd44c","type":"debug","z":"99e6906e.c69df","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":603,"y":507,"wires":[]},{"id":"a1fa48a2.6e0c98","type":"sonos-config","z":"","name":"play1","serialnum":"B8-E9-37-58-31-C0:A","ipaddress":"192.168.178.38"},{"id":"32a98882.56e1c8","type":"sonos-config","z":"","name":"bad","serialnum":"00-0E-58-FE-3A-EA:5","ipaddress":"192.168.178.35"}]

Wow, this was pretty fast. I'll try it on this weekend and let you know about the result. Thank you very much for your great support!

I tried it. The result is that the right player gets paired with something unknown. It looks in the Sonos App Like this:  (?+R)
I tried to pair two Play 5 of 1.gen.
Do you have any suggestion?

Yes. :-)
Please (wait an hour) and install 2.1.1 Here is an example flow. I dont check anymore "same model" and simplified the separate_stereopair.
[{"id":"20fdba72.27d266","type":"inject","z":"99e6906e.c69df","name":"","topic":"","payload":"get_properties","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":540,"wires":[["ecc6b9fb.a28bb8"]]},{"id":"ecc6b9fb.a28bb8","type":"sonos-get-status","z":"99e6906e.c69df","confignode":"32a98882.56e1c8","name":"player right","x":271,"y":540,"wires":[["986618a9.2293e8"]]},{"id":"986618a9.2293e8","type":"change","z":"99e6906e.c69df","name":"create stereopair","rules":[{"t":"set","p":"topic","pt":"msg","to":"uuid","tot":"msg"},{"t":"set","p":"modelName","pt":"msg","to":"Sonos Play:1","tot":"str"},{"t":"set","p":"payload","pt":"msg","to":"create_stereopair","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":490,"y":540,"wires":[["dde74552.b1d598"]]},{"id":"204a38d9.0e8e18","type":"inject","z":"99e6906e.c69df","name":"","topic":"","payload":"separate_stereopair","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":490,"y":500,"wires":[["dde74552.b1d598"]]},{"id":"91ba37a8.e4d708","type":"debug","z":"99e6906e.c69df","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":723,"y":500,"wires":[]},{"id":"dde74552.b1d598","type":"sonos-control-player","z":"99e6906e.c69df","confignode":"2113e9bb.c52236","name":"player left","x":720,"y":540,"wires":[["91ba37a8.e4d708"]]},{"id":"32a98882.56e1c8","type":"sonos-config","z":"","name":"bad","serialnum":"00-0E-58-FE-3A-EA:5","ipaddress":"192.168.178.35"},{"id":"2113e9bb.c52236","type":"sonos-config","z":"","name":"play1","serialnum":"B8-E9-37-58-31-C0:A","ipaddress":""}]

OK, thank's. I'll check it tomorrow and let you know...

Pairing is working 😊 fine!
But injecting the seperate command results into the following Error Message:
"separate stereo pair - statusCode >>500 & upnpErrorCode >>402 upnpErrorMessage >>Invalid Args :: Details: none"

We make progess :-)
It seems that we have to use the same flow as in "create_stereopair" - not the shortcut. For that I will change the input parameter - tomorrow with 2.1.3

OK, then I will test it again.

Hi. Here are the flows for 2.1.3. I modified separate_stereopairs and now double cross my fingers.
[{"id":"7842b4b6.3a01dc","type":"inject","z":"99e6906e.c69df","name":"","topic":"","payload":"get_properties","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":586,"wires":[["aa30c460.a2b5c8"]]},{"id":"20fdba72.27d266","type":"inject","z":"99e6906e.c69df","name":"","topic":"","payload":"get_properties","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":540,"wires":[["ecc6b9fb.a28bb8"]]},{"id":"ecc6b9fb.a28bb8","type":"sonos-get-status","z":"99e6906e.c69df","confignode":"32a98882.56e1c8","name":"player right","x":270,"y":540,"wires":[["986618a9.2293e8"]]},{"id":"aa30c460.a2b5c8","type":"sonos-get-status","z":"99e6906e.c69df","confignode":"32a98882.56e1c8","name":"player right","x":270,"y":586,"wires":[["393ee1d7.60b13e"]]},{"id":"393ee1d7.60b13e","type":"change","z":"99e6906e.c69df","name":"separate stereopair","rules":[{"t":"set","p":"topic","pt":"msg","to":"uuid","tot":"msg"},{"t":"set","p":"modelName","pt":"msg","to":"Sonos Play:1","tot":"str"},{"t":"set","p":"payload","pt":"msg","to":"separate_stereopair","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":450,"y":586,"wires":[["dde74552.b1d598"]]},{"id":"986618a9.2293e8","type":"change","z":"99e6906e.c69df","name":"create stereopair","rules":[{"t":"set","p":"topic","pt":"msg","to":"uuid","tot":"msg"},{"t":"set","p":"modelName","pt":"msg","to":"Sonos Play:1","tot":"str"},{"t":"set","p":"payload","pt":"msg","to":"create_stereopair","tot":"str"}],"action":"","property":"","from":"","to":"","reg":false,"x":450,"y":540,"wires":[["dde74552.b1d598"]]},{"id":"dde74552.b1d598","type":"sonos-control-player","z":"99e6906e.c69df","confignode":"2113e9bb.c52236","name":"player left","x":540,"y":480,"wires":[["91ba37a8.e4d708"]]},{"id":"91ba37a8.e4d708","type":"debug","z":"99e6906e.c69df","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"true","targetType":"full","x":630,"y":520,"wires":[]},{"id":"32a98882.56e1c8","type":"sonos-config","z":"","name":"bad","serialnum":"00-0E-58-FE-3A-EA:5","ipaddress":"192.168.178.35"},{"id":"2113e9bb.c52236","type":"sonos-config","z":"","name":"play1","serialnum":"B8-E9-37-58-31-C0:A","ipaddress":""}]

Well, that's it. Great, woderfull Job!!! Pairing and decoupling is now working as expected. Thank you once again for your outstanding support.
Only one remark. In your provided example you should replace the string "Sonos Play:1" again by
msg.payload.modelName
Thank you Mate. This was really agile development 😉

Super. Thanks.
I corrected the example. In fact we dont need the modelName anymore as it also works with not compatible player - strange but ok.
I close this topic. Have a good time.

authors: AndreasMaverick hklages

repo: hklages/node-red-contrib-sonos-plus


text:
建议：希望能增加update功能

希望能增加update的功能，这样对go编译的朋友友好点。

./scan4all -h
-update                update scan4all to latest version
There is already a response function

authors: Trapshell hktalent


text:
Number of points in each object

Hy !
Number of points in ScanObjectNN dataset are 2048 for each object.
while in modelnet dataset each object of each category has 10,000 points.
Isn't it difficult for network to learn features from such small (2048) points?
I Look forward to your reply.
Thanks

Hi,
I think that the default .h5 file that is most classification models use for ModelNet40 also has 2048 points per object. (From this download link: https://shapenet.cs.stanford.edu/media/modelnet40_ply_hdf5_2048.zip)
In each iteration of the network, 1024 points is randomly sampled from the 2048. Usually this is enough for classification from what I've tried.
Thanks,
Mika

Thank you so much for your reply.
You are totally right about 2048 points in .hf version of modelnet you mentioned.
But I was referring to this version of modelnet which has 10,000 points per shape.
it has all txt files.
https://shapenet.cs.stanford.edu/media/modelnet40_normal_resampled.zip
Thanks
Rabbia

Hi,
I apologize for the delayed response. You can refer to the original .bin files for a denser point cloud. Those contain all the object points that were present in the scene reconstructions. Note that the number of points on each object will not be the same and some might have <10k points.

Thank you very much for the reply.Much appreciated .

authors: mikacuy rabbiahassan

repo: hkust-vgd/scanobjectnn


text:
c mine

its not farming c mine just atcking goblins
and showning login error

you got banned I guess, the cmine is not only concern.
Diego @.***> 於 2022年4月27日 週三 23:56 寫道：

its not farming c mine just atcking goblins
and showning login error
—
Reply to this email directly, view it on GitHub
https://github.com/hldh214/lok_bot/issues/41, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHMYSMF7SVTH5JNHNAUTOYTVHFPRNANCNFSM5UPTEKXQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


text:
Typo in wiki

Seems like there is no public wiki edits, so:
https://github.com/hlissner/doom-emacs/wiki/Modules
These are not loaded automatically. Use load! to do so.

;; from modules/feature/version-control/config.el
(load +git)

This should probably be (load! '+git) (exclam and quote missing)

@Silex, it should actually be
(load! "+git")

The syntax of load! changed not too long and needs a string rather than a symbol.

This has been corrected. Thanks for letting me know!

authors: Silex UndeadKernel hlissner

repo: hlissner/doom-emacs


text:
do-repeat! macro not effect when I define my owner repeat

When I define repeat key with do-repeat! like before ,but it's not working .
(do-repeat! hl-todo-next hl-todo-next hl-todo-previous)
(do-repeat! hl-todo-previous hl-todo-next hl-todo-previous)

;; buffer
(do-repeat! bury-buffer next-buffer previous-buffer)
(do-repeat! previous-buffer next-buffer previous-buffer)
(do-repeat! next-buffer next-buffer previous-buffer)

repeat key seem always bind evil-repeat-find-char

747c040 seems to fix it for me. Please update and let me know if it works for you.

works fine, thanks

authors: driftcrow hlissner