text:
Added GeneralObjectCoder and using it as coder for most transforms

GeneralObjectCoder is a Javascript-specific coder implementation that relies on 'standard coders' to encode most javascript object types (string, number, object). This coder is then used as the output coder of all ParDos, and most transforms, except for GBK and GroupBy's internal implementation.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Choose reviewer(s) and mention them in a comment (R: @username).
[ ] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
ValidatesRunner compliance status (on master branch)

Lang
ULR
Dataflow
Flink
Samza
Spark
Twister2

Go
---

---

Java

Python
---

---

XLang

---

Examples testing status on various runners

Lang
ULR
Dataflow
Flink
Samza
Spark
Twister2

Go
---
---
---
---
---
---
---

Java
---

---
---
---
---
---

Python
---
---
---
---
---
---
---

XLang
---
---
---
---
---
---
---

Post-Commit SDK/Transform Integration Tests Status (on master branch)

Go
Java
Python

Pre-Commit Tests Status (on master branch)

---
Java
Python
Go
Website
Whitespace
Typescript

Non-portable

Portable
---

---
---
---

See .test-infra/jenkins/README for trigger phrase, status and link of all Jenkins jobs.
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

PTAL @kennknowles @robertwb

repo: robertwb/beam-javascript


text:
Migrate to GitHub Actions

Type: Infrastructure

We could try GitHub Actions but it seems you did not yet sign up to the beta.

Gimme a sec, Ill do that quickly :P
Would love to use Github Actions!

source: gharchive/issue

authors: DanielRuf robinweser

repo: robinweser/fela

license: MIT

license_type: permissive

license_source: github-api


text:
Improvements for AdminPanel on mobile

I have made the following changes to primarily improve readability of forms and buttons on mobile devices.

Reduce text in warning by encouraging backups
Separate divs for forms with buttons so text is readable on mobile

With the following bugfix, should you want to simply fix the active nav tab:

Initialize "active" tab properly for nav-tabs (nav-link vs nav-item)

@robiso This PR is a striking example of single huge lines creating unreadable diffs. Here, it is very difficult to see what has been actually changed! A 1341 characters line is waaaaaay too long! And it makes modifying it a real PITA.
I hope one day we can move the html out of the PHP code in templates ;)
Note: it shouldn't cause any issue to split the lines here!

@notcarbide, the first change (active tab on setting) kind of breaks the current functionality if the user is using Bootstrap 3 (which will be still the default one used in the WonderCMS 3.0.0 version.
Example for this behaviour:

What I've made in my previous pull request is, a functional active tab experience. If the user uses Bootstrap 4, he will run into this issue, but at least it wont be broken by default.
I suggest we leave it as it was, until we fully migrate to Bootstrap 4 in the future. So for now, let's stay with Bootstrap 3 and some Bootstrap 4 compatibility.
The other mobile changes also introduce a couple of issues when using Bootstrap 3, as seen in the screenshots below:

@NicolasCARPi, you are correct and I couldn't agree more, this was a bit frustrating, to say the least. :)

Note: it shouldn't cause any issue to split the lines here!

Do you mean split the HTML lines into readable code? (Ala prettify?)

Do you mean split the HTML lines into readable code? (Ala prettify?)

Yes, it won't change a thing!

@robiso gotcha! Gonna close this pending prettifying things, I'll see what I can do to get a fix for mobile that won't break older bootstrap afterward.

@NicolasCARPi, will do this in the following pull request. I've nearly finished the screenshots for themes and plugins.
@notcarbide, thank you!

source: gharchive/pull-request

authors: NicolasCARPi notcarbide robiso

repo: robiso/wondercms

license: mit

license_source: bigquery


text:
Add the current time zone to the clock display

This change adds the abbreviated text of the current time zone (e.g. EST, EDT etc.) to the clock display.

I'm unclear as to the value of this, would you not already know what time zone you are in?

Ok - however, personally, I think I would rather not see it on the display.
Would you consider updating the commit to include a new global variable in the .ino and .cpp files such as:
const bool displayTimeZone = false;   // set to true to display the time zone, set to false to not display the time zone
and then in the code test that and only add the time zone to the display if it is set to true.
If yes, I would be happy to include on that basis.

in both programs, could you please change the line that reads:
if (displayTimeZone == true)
to
if (displayTimeZone)
just to stay consistent with the rest of the program.
Once done, I'll accept the commit.
Thanks for this. hope the program is of good use to you.
Best Regards,
Rob

authors: BigThunderSR roblatour


text:
remnote vscode: Oucho Gaucho! 🌵 Nothing to round up! 🤠

but it works fine using local vscode
thx for create this plugin!

Hi @Jackiexiao
How are you using VS Code remotely? Container? SSH? WSL?
The extension looks at the local filesystem for snippets, so obviously if you have are using a remote method this may mean the snippet files are not local anymore, so it does not find anything!
I'm not very familiar with remote development in VS Code, but I am a bit reluctant to implement something for this if it involves some complicated client-server style logic.
From a selfish point of view, I wouldnt use this feature, so it wouldnt be a good investment of my time! If you or someone else are interested in this feature, I am open to receive a PR, provided the code is sensible and does not compromise the existing performance.

thx for your reply,
I use VS Code remote (connect to ubuntu), I also think this is an unimportant feature haha

authors: Jackiexiao robole

repo: robole/vscode-snippets-ranger


text:
Timeouts can cause sporadic failures with IronPython

Some of Robot's own acceptance and unit test sporadically fail with exception like this:
TypeError: Unable to cast object of type 'Microsoft.Scripting.Runtime.Uninitialized'
to type 'System.Exception'.

The exact place has varied, but after some investigation it turned out that the problem is related to timeouts. Timeouts didn't even need to exceed, it was enough that they were used. Interestingly actually acceptance tests for timeouts passed and these weird failures were seen elsewhere.
Apparently the root cause is that with IronPython we use a pretty hackish stoppable thread implementation to make it possible to stop keywords if a timeout occurs. I have already prototyped that it is possible to use .NET threads instead and that seems to avoid these strange failures. More testing still needed, though.

All unit and acceptance tests pass with IronPython and also with other interpreters. This issue can be considered done.

repo: robotframework/robotframework


text:
Does it support Dameng database (Chinese localized database) connection? What libraries need to be installed? how to use?

Does it support Dameng database (Chinese localized database) connection? What libraries need to be installed? how to use?

I'm not sure do you mean using Dameng database in testing somehow or using it to localize Robot Framework itself. If the former, then that's certainly possible via libraries. I'm not sure are there any ready-made libraries available but creating custom libraries for Robot is pretty easy. If you mean the latter, then that's not supported. Localization would be great, though.


text:
add support to log via syslog for daemons

This is especially useful for albatross-tls-endpoint in inetd mode, where stdout is occupied with client communication
Fixes #176

maybe @reynir has an opinion on this... otherwise I'll merge once CI is fine :)

repo: robur-coop/albatross

license: ISC


text:
provide good error message when provides... is forgotten in the header

Currently this code snippet:
app "broken"
    packages {
        pf: "https://github.com/roc-lang/basic-cli/releases/download/0.3.2/tE4xS_zLdmmxmHwHih9kHWQ7fsXtJr7W7h3425-eZFk.tar.br",
    }
    imports [
        pf.Stdout,
    ]

main =
    Stdout.line "answer"

results in:
% roc check aoc-2022/03/broken.roc
thread 'main' panicked at 'not yet implemented: unhandled parse error IndentProvides(@201)', crates/reporting/src/error/parse.rs:3499:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

provides [main] to pf was forgotten in the header, the panic should be prevented, and a nice error message should be provided instead.

The error message that was already there however will not have a newline at the end. Because of this, the shell prompt will be on the same line as the last line from the error. This is not ideal

repo: roc-lang/roc


text:
[simple PR] Enable fuzzing and sanitizers

This allows using sanitizers with Roc. It is hidden behind the sanitizers feature and mostly for testing (This was a suggestion by Richard to avoid exposing this testing). Eventually we may want to expose it, but if so, we would want to expose it in a nice way. For example, could potentially have a roc fuzz command or something similar. This also adds address, memory, and thread sanitizers. They can be used with fuzzing or standalone.
Also, removed the unnecessary call to llvm-as from the debugir path code. llc can directly intake a .ll file.

Currently, it is mostly documented in a side repo. I think it is easiest to understand in context: https://github.com/bhansconnect/roc-fuzz
Should I put this somewhere in the main repo?

yeah maybe link to that where the feature flag is defined? so in a year we at least have some way of figuring out what this was for

authors: bhansconnect folkertdev


text:
[bug]

Describe the bug
When using dynaconf list having lazy values, the out put is the class notation instead of the formatted value.
To Reproduce
Steps to reproduce the behavior:
Export a variable using a lazy formatter
export DYNACONF_PATH="@format /databases/{env[USER]}"

On the console run dynaconf list
dynaconf on  master [$] via 🐍 v3.7.0(dynaconf)
❯ dynaconf list
Working in development environment
USERNAME: 'RiverFount'
DAY: 28.0
PATH: <dynaconf.utils.parse_conf.LazyFormat object at 0x7fe
68fecc898>

What is the actual result.
PATH: <dynaconf.utils.parse_conf.LazyFormat object at 0x7fe
68fecc898>

What I expected to see
PATH: /databases/bruno

https://github.com/rochacbruno/dynaconf/blob/fd9622dd46a5261c243f29eadb43d997f17e408e/dynaconf/utils/parse_conf.py#L55-L72

In addition, running dyanconf list -o test.json results in a TypeError exception:
TypeError: Object of type 'LazyFormat' is not JSON serializable

To reproduce:
(export DYNACONF_TEST="@format test"; dynaconf list -o out.json)

authors: kshahar rochacbruno

repo: rochacbruno/dynaconf


text:
Adding Feature for Importing Cert to Frodo Truststore

We are facing an issue when using self-cert in ForgeRock AM. The error message goes:
Error getting cookie name: Error: self-signed certificate in certificate chain
error authenticating - self-signed certificate in certificate chain
This happens when connecting to AM. Unfortunately, the corp policy requires to use TLS and our own CA. So it would be great to add this feature to unblock us from going forward. Thanks.
Best,
Le

You can specify -k, --insecure flag with most sub-commands, which will bypass the validation of the certificate trust chain. This should not be a cause for concern for this case as the service you are connecting to (AM/IDM REST) is managed by you and you know that there is no man in the middle impersonating those servers.

Thanks Sandeep.
We have a slightly different use case. We put a java wrapper around Frodo and deploy it as a service, so that it can be called by other apps to import/export journeys.
NodeJS has a way to specify truststore file as a environment variable, which should resolve the cert trusting issue. Thanks for the info anyways.

repo: rockcarver/frodo-cli


text:
events.php, tasks.php and strategies.php ignored in .rocketeer/stages/[stagename]/

When I use the file-based alternative for setting up different configs for different stages, it works beautifully with for example hooks.php
hooks.php is located in .rocketeer/stages/staging/ This config is used when deploying to stage="staging".
If I add an events.php, or strategies.php to the .rocketeer/stages/staging/ folder, they are ignored. The config in these files is not used when deploying to stage="staging"
Can someone tell me why and if and how it can be fixed
Thanks!

This is normal behavior, cascading only works for config files. That being said it should work for strategies.php are you sure it's not loaded?

Yes, when I alter the file in .rocketeer to only use composer. It only uses composer. When I alter the file in  .rocketeer/stages/staging/ it is ignored.

Hm maybe this is related to how strategies are bound as singletons to the container, maybe it's not overriding them

It certainly looks like that. Is that fixable?
Peter Melis
Product Manager
T +31 (0)6 33 200 200
E peter.melis@britelayer.com
I www.britelayer.com
NEW ADDRESS:
Koningin Wilhelminaweg 469
3737BE Groenekan, The Netherlands
2015-09-10 11:23 GMT+02:00 Maxime Fabre notifications@github.com:

Hm maybe this is related to how strategies are bound as singletons to the
container, maybe it's not overriding them
—
Reply to this email directly or view it on GitHub
https://github.com/rocketeers/rocketeer/issues/599#issuecomment-139180592
.

I think it already is on 3.0 because IIRC strategies are not bound to the container anymore but created on the fly, but on 2.0 it'd require some changes so need to see.

Thank you for your quick responses!
I would appreciate it if you would keep me up-to-date on this.
Is 3.0 still being developed or in beta?
Peter Melis
Product Manager
T +31 (0)6 33 200 200
E peter.melis@britelayer.com
I www.britelayer.com
NEW ADDRESS:
Koningin Wilhelminaweg 469
3737BE Groenekan, The Netherlands
2015-09-10 11:36 GMT+02:00 Maxime Fabre notifications@github.com:

I think it already is on 3.0 because IIRC strategies are not bound to the
container anymore but created on the fly, but on 2.0 it'd require some
changes so need to see.
—
Reply to this email directly or view it on GitHub
https://github.com/rocketeers/rocketeer/issues/599#issuecomment-139184228
.

It's still being developed in the develop branch

Ok, thanks.
Is it in any other way possible to use another deploy strategy (sync
instead of clone) on another stage?
Peter Melis
Product Manager
T +31 (0)6 33 200 200
E peter.melis@britelayer.com
I www.britelayer.com
NEW ADDRESS:
Koningin Wilhelminaweg 469
3737BE Groenekan, The Netherlands
2015-09-10 12:00 GMT+02:00 Maxime Fabre notifications@github.com:

It's still being developed in the develop branch
—
Reply to this email directly or view it on GitHub
https://github.com/rocketeers/rocketeer/issues/599#issuecomment-139190984
.

authors: Anahkiasen petermelis

repo: rocketeers/rocketeer


text:
Support for abstract class proxying

Will be useful for creating partially implemented proxies. Needs some design considerations.
Implementation ideas: http://stackoverflow.com/questions/3291637/alternatives-to-java-lang-reflect-proxy-for-creating-proxies-of-abstract-classes/3292208#3292208

Seems to have low value on a second thought. Will pospone until the need arises again.


text:
Fix modal loop stuck at GetMessage

In Windows 11, Loop stucks at GetMessage If hWnd.IsWindow() is false.
This commit resolves that issue.
Your patch 8e110a3 works in Windows 10 but not in Windows 11. I tried dig down into windigo and I addressed that is modal loop stucks at GetMessage.
After adding that lines, program works as expected.
Related to #20.

Are you sure of this?
I just tested my example in a fresh installed Windows 11 machine, and it works perfectly, no need for any changes.

I tried that but no luck. I know it sounds weird, but after changing order of lines it works perfectly.
But here is my code:
func ShowTextInputBox(title, msg string) string {
	text := ""

	modal := ui.NewWindowModal(ui.WindowModalOpts().
		Title(title).
		ClientArea(win.SIZE{Cx: 300, Cy: 105}),
	)

	createStatic(modal, msg, win.POINT{X: 10, Y: 10}, win.SIZE{Cx: 280, Cy: 15})

	edit := createEdit(modal, win.POINT{X: 10, Y: 35}, win.SIZE{Cx: 280, Cy: 20})

	button := createButton(modal, "OK", win.POINT{X: 10, Y: 65}, win.SIZE{Cx: 280, Cy: 30})
	button.On().BnClicked(func() {
		text = edit.Text()

		modal.Hwnd().SendMessage(co.WM_CLOSE, 0, 0)
	})

	modal.On().WmCreate(func(_ wm.Create) int {
		edit.Hwnd().SetFocus()

		return 0
	})

	modal.ShowModal(globalWindow)

	return text
}

In Windows 10 works perfectly, but not in my all of Windows 11 machines using same build. I'm using latest version(installed all available updates) of Windows 11.
I'm not used goroutine and locked OS thread. Maybe this is Windows or my fault, feel free to close this PR.
Thanks.

I figured out this issue.
It is not fault of windigo, Windows, and also me.
In my country, banks and governments forced to install their security agents, such as TouchEn nxKey, and that installed to all of my Windows 11 machines. My all of Windows 11 machines are shared PC, so I think other person installed it as I using isolated virtual machine to use bank/government sites.
Anyway, one of that security agents made GetMessage weird. After uninstalling all of their security agents, my build works perfectly.
Sorry for opening invalid PR, maybe I need to found that agent and complain to company...
I'm closing this PR now.
Thanks.

No problem. In my country, if we want to access bank websites we're also required to install some crap to supposedly protect the computer. But I've never seen a program so intrusive as yours... messing with the message loop probably means a DLL injection gone wrong. Or maybe it's the Go runtime making its detection confused... who knows.

authors: Hoto-Cocoa rodrigocfd

repo: rodrigocfd/windigo


text:
Update to Swift 5.8

Would it be possible?

Of course, but it will be a while as I’m busy with my day job and other stuff. Stay tuned!

On 8 Apr 2023, at 5:37, Arthur Pinheiro @.***> wrote:
Would it be possible?
—
Reply to this email directly, view it on GitHub https://github.com/roeybiran/dash-docset-swift-language-guide/issues/2, or unsubscribe https://github.com/notifications/unsubscribe-auth/AI2JZDPZ2OFYYWUKNXWZFG3XADFOBANCNFSM6AAAAAAWXDXLGU.
You are receiving this because you are subscribed to this thread.

Well, apparently updating the docset for Swift 5.8/5.9 would be harder than I thought. The Swift docs are now built using  DocC, essentially a JS-based single page application and that doesn’t seem to play well with Dash.

authors: roeybiran xilopaint


text:
Docs: stateful values link is broken

https://github.com/rofrischmann/react-look/blob/develop/docs/plugins/StatefulVaue.md

Thanks! For telling, should fix that soon :P

authors: jide rofrischmann

repo: rofrischmann/react-look


text:
uri error

Uri downloadUrl = (await uploadTask.future).downloadUrl;
in that the uploadTask.future is not working. Or they said the future getter is not define for the StorageUploadTask

yeah I get the same error

have you the solution to this problem?, i get the same error now

String downloadUrl = await uploadTask.lastSnapshot.ref.getDownloadURL();
_sendMessage(
messageText: null, imageUrl: downloadUrl);
}),

thanks

authors: gatertronics mglriosr mikenyaga mishubham thevishvajeet


text:
DIH doesnt close DataSource when import encounters errors

DIH imports don't close DataSource's (which can hold db connections, etc.) in all cases. Specifically, if an import runs into an unexpected error forwarding processed docs to other nodes, it will neglect to close the DataSource's when it finishes.
This problem goes back to at least 7.5. This is partially mitigated in older versions of some DataSource implementations (e.g. JdbcDataSource) by means of a "finalize" hook which invokes "close()" when the DataSource object is garbage-collected. In practice, this means that resources might be held open longer than necessary but will be closed within a few seconds or minutes by GC. This only helps JdbcDataSource though - all other DataSource impl's risk leaking resources.
For plugin versions targeting master/9.0, which requires a minimum of Java 11 and doesn't have the finalize-hook, the connections are never cleaned up when an error is encountered during DIH. So this will be a much bigger deal in versions >=9.0

I have a branch in the lucene-solr repo here with a few edits that help reproduce the problem.
What that branch has is:

logging in JdbcDataSource.close() to record if/when it is called.
a script "solr/reproduce-dih-jdbc-leak.sh", which can be run from in the solr directory to reproduce the problem.
some changes to ConcurrentUpdateHttp2SolrClient which optionally fake an IOException to trigger the DIH issue downstream.

To reproduce the issue, run the included script from the "solr" directory. It spins up two solr nodes based out of a "cloud-dih" example directory, and kicks off a DIH run. When the DIH run finishes, the logs (in solr/example/cloud-dih/node1/logs/solr.log) will be missing the line that gets printed when JdbcDataSource closes: In JdbcDataSource.close
To see the "normal" behavior, edit the "reproduce-dih-jdbc-leak.sh" script, changing the CAUSE_DIH_IO_ERROR variable from "true" to "false". Following a DIH run, the logs will show that JdbcDataSource was closed correctly.
For the lazy, I've attached the log file from the DIH node from two runs: one that shows the normal good behavior and one that shows the leak when an IOError pops up during the import.
error-solr.log
no-error-solr.log

repo: rohitbemax/dataimporthandler


text:
Fixes console for local development

Prior to this, resolving BUNDLE_GEMFILE was problematic plus we were
relying on the user having pry installed globally. Which may not be
the case.

:+1: thank you!

authors: benlovell pxlpnk

repo: roidrage/lograge


text:
Clippy doesn't actually do anything right now

Clippy runs on every commit on master or in a PR but it isn't configured, so even basic things like unused-variables doesn't raise an error. This is problematic, since it means that our attempts at linting aren't actually working. As an example, go look at the results from running clippy in the latest commit at the time of writing (linked here for convenience). It has many lints, but none of them caused the CI to fail.
We should probably make it actually raise errors so that the CI does something.

fwiw, this was a conscious choice I made at the time. Running clippy on every commit is good to surface issues, but I decided against making all lints into errors. Clippy does stabilize new lints from time to time, but failing CI on them isn't quite fair.
There was a brief discussion in Discord about some of the approaches we could take to opt into many Clippy lints, but because this repository is a large workspace, all of them are a little tricky.

authors: Dekkonot LPGhatguy

repo: rojo-rbx/rbx-dom


text:
Use UstrSet for TypeInfo.properties_visited and TypeInfo.aliases

For better rbx_binary serialization performance, this PR changes the type of TypeInfo.properties_visited from HashSet<(Ustr, VariantType)> to UstrSet, and changes the type of TypeInfo.aliases from BTreeSet<Ustr> to UstrSet. These changes are sound because:

The second tuple field in TypeInfo.properties_visited entries is not used for anything outside of the collection, and it's impossible for an instance to contain two properties that have the same name, but different types.
The order of TypeInfo.aliases is unimportant.

On my machine, serialization benchmark results compared to latest master are as follows:
100 Folders/Serialize   time:   [20.219 µs 20.256 µs 20.298 µs]
                        thrpt:  [37.165 MiB/s 37.242 MiB/s 37.309 MiB/s]
                 change:
                        time:   [-2.1144% -1.9337% -1.7269%] (p = 0.00 < 0.05)
                        thrpt:  [+1.7573% +1.9719% +2.1600%]
                        Performance has improved.

100 Deep Folders/Serialize
                        time:   [22.818 µs 22.837 µs 22.858 µs]
                        thrpt:  [33.001 MiB/s 33.032 MiB/s 33.060 MiB/s]
                 change:
                        time:   [-2.5076% -2.3625% -2.2207%] (p = 0.00 < 0.05)
                        thrpt:  [+2.2711% +2.4196% +2.5721%]
                        Performance has improved.

100 100-line ModuleScripts/Serialize
                        time:   [76.197 µs 76.256 µs 76.313 µs]
                        thrpt:  [48.338 MiB/s 48.374 MiB/s 48.412 MiB/s]
                 change:
                        time:   [+0.9836% +1.5364% +2.1002%] (p = 0.00 < 0.05)
                        thrpt:  [-2.0570% -1.5131% -0.9740%]
                        Change within noise threshold.

1,000 Parts/Serialize   time:   [1.3277 ms 1.3290 ms 1.3303 ms]
                        thrpt:  [3.1464 MiB/s 3.1495 MiB/s 3.1526 MiB/s]
                 change:
                        time:   [-6.6982% -6.5511% -6.4099%] (p = 0.00 < 0.05)
                        thrpt:  [+6.8490% +7.0104% +7.1791%]
                        Performance has improved.

To help reduce noise, it's generally good to have as few other things running on your system as possible. 1,000 parts is definitely more prone to pollution than 10,000 parts too, so if I do any more performance work in the future, I'll make sure to add some chunkier (and more diverse) benchmarks


text:
Xiaomi Outdoor AW300

Hello, is this camera compatible with the project?
https://www.amazon.es/Xiaomi-vigilancia-rotación-detección-Movimiento/dp/B0BW48J4Z3/ref=sr_1_13?__mk_es_ES=ÅMÅŽÕÑ&sr=8-13
Thx 😊

AFAIK it's not compatible.

AFAIK it's not compatible.

"Do you know where the 'Yi Outdoor 1080p' model or a similar one that is compatible with the firmware is sold? Can you share the link to the store?"

If you are looking for an outdoor cam it's not simple.
But usually you can buy Yi cams on Aliexpress.

Thank you very much for your response.
I'm having a hard time finding an outdoor camera compatible with this project.
The Yi Home camera is easy to find, but the Yi Outdoor seems impossible to get.
Best regards.

authors: roleoroleo rubenleon


text:
API error: Cannot read property 'trace' of undefined

I'm unsure if this is an issue with this package or something within Rollbar.  I just added this to my Laravel 5 project using https://github.com/jenssegers/laravel-rollbar and am testing things out and Rollbar is seeing an exception, but it's not the one I'm throwing.
I've verified that the exception and appropriate context is being passed to the rollbar-php package.

@dlsteuer began investigating this issue with me and we've narrowed it down to https://github.com/rollbar/rollbar-php/blob/master/src/rollbar.php#L342-L343 being the cause of the issue.  I've created this ticket for tracking purposes.

My app needs to go in production in the next month and this is a blocker for me.  I'm happy to Fork the project and disable the conversion that appears to be breaking this, but would prefer to only take that route if this isn't something that is on the radar for a fix.

Hey @bkuhl we're working towards the 1.0 release, which wouldn't have this problem because it's been removed in that branch, I need to have a discussion with some other members of the team about that. The only thing holding back the 1.0 release right now is api compatibility with the current version.

Any idea on what the anticipated date of that is?

Hey Ben, unfortunately I'm not sure on a timeline, so I added a config switch for this. If you add
$configArray = array(
    ...
    enable_utf8_sanitization => false,
    ...
)

This will disable the sanitization for you. Let me know if you have any further problems. It should be available in composer shortly as v0.18.1

authors: bkuhl dlsteuer

repo: rollbar/rollbar-php


text:
Fix TypeError(s) and serialize ExceptionInfo

Fixes #100, fixes #106

bump

bump @brianr @rokob @jessewgibbs

Woohoo thanks! :)

authors: MichaelMackus nocive


text:
Revisit New methods in types package

          The `New` method is added to the `Block` struct. This method seems unnecessary as it simply returns a new instance of `Block`. This can be done directly with `new(Block)`. Consider removing this method to reduce complexity.

- // New returns a new Block.
- func (b *Block) New() *Block {
- 	return new(Block)
- }

Commitable suggestion (Beta)
// New returns a new Block.
func NewBlock() *Block {
	return new(Block)
}

Originally posted by @coderabbitai[bot] in https://github.com/rollkit/rollkit/pull/1294#discussion_r1377393911

https://github.com/rollkit/rollkit/pull/1294#discussion_r1377393919

https://github.com/rollkit/rollkit/pull/1294#discussion_r1377393929

Duplicate of https://github.com/rollkit/rollkit/issues/1340

authors: MSevey Manav-Aggarwal

repo: rollkit/rollkit


text:
Uncaught ReferenceError: __commonjs is not defined

Here is my rollup setup (with gulp)

gulp.task('dev:rollup:stream' , (cb) =>
{
    pump([
        rollupStream({
            entry: join(yeoman.script , 'bundle.js'),
            format: 'iife',
            cache: cache,
            plugins: [
                 includePaths({
                     include: {},
                     paths: [yeoman.script] ,
                     external: [],
                     extensions: nbConfig.extensions
                 }),
                 json(),
                 riot(),
                 nodeResolve({
                     jsnext: true,
              main: true
                 }),
                 // PROBLEM
                 commonJs({
                     include: 'node_modules/**'
                 }),
                 babel()
            ],
            globals: globalLibs,
            external: externalLibs,
            sourceMap: true
        }).on('bundle' , function(bundle)
        {
            cache = bundle;
        }),
        vinylSource('bundle.js'),
        vinylBuffer(),
        sourcemaps.init({loadMaps:true}),
        sourcemaps.write('.'),
        gulp.dest(join(yeoman.dev  , 'scripts'))
    ] , cb);
});

On first run, there is a line at the top of the bundle.js:
function __commonjs(fn, module) { return module = { exports: {} }, fn(module, module.exports), module.exports; }

Then I just edit any of the files under watch, rollup to kicks in and recompile. Then that line of code disappeared, and browser console throw error: Uncaught ReferenceError: __commonjs is not defined
Anyone experience the same problem?
There is only one commonjs in my import so far.
Which is https://github.com/intelie/immutable-js-diff

Please see https://gist.github.com/Rich-Harris/88c5fc2ac6dc941b22e7996af05d70ff. Note that repros that involve Gulp will be ignored unless Gulp is part of the issue. Thanks

No repro, closing

authors: Rich-Harris joelchu

repo: rollup/rollup-plugin-commonjs


text:
S3 laion5b upload faild

when I use for i in {00000..00001}; do wget https://huggingface.co/datasets/laion/laion1B-nolang-joined/resolve/main/part-$i-4852663c-9585-44b0-9a45-f95c2b89c792-c000.snappy.parquet -O - | aws s3 cp - s3://laion5b/metadata/laion1B-nolang-joined/part-$i-4852663c-9585-44b0-9a45-f95c2b89c792-c000.snappy.parquet; done
upload failed: - to s3://laion5b/metadata/laion1B-nolang-joined/part-00001-4852663c-9585-44b0-9a45-f95c2b89c792-c000.snappy.parquet An error occurred (NoSuchBucket) when calling the CreateMultipartUpload operation: The specified bucket does not exist

Hello,
This command is to upload to s3.
If you want to do that you need to create the right bucket and use that.
You can also download the files locally with another command provided in
the doc.
On Fri, Nov 10, 2023, 00:24 kelisiya @.***> wrote:

when I use for i in {00000..00001}; do wget
https://huggingface.co/datasets/laion/laion1B-nolang-joined/resolve/main/part-$i-4852663c-9585-44b0-9a45-f95c2b89c792-c000.snappy.parquet
-O - | aws s3 cp -
s3://laion5b/metadata/laion1B-nolang-joined/part-$i-4852663c-9585-44b0-9a45-f95c2b89c792-c000.snappy.parquet;
done
upload failed: - to
s3://laion5b/metadata/laion1B-nolang-joined/part-00001-4852663c-9585-44b0-9a45-f95c2b89c792-c000.snappy.parquet
An error occurred (NoSuchBucket) when calling the CreateMultipartUpload
operation: The specified bucket does not exist
—
Reply to this email directly, view it on GitHub
https://github.com/rom1504/img2dataset/issues/359, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAR437UHPRHKVUQQEADIOELYDXQCFAVCNFSM6AAAAAA7FZWG4CVHI2DSMVQWIX3LMV43ASLTON2WKOZRHE4DOMJUGYYDQMQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


text:
License missing

Thanks for sharing this snippet. There's no license indication. Please add license information.

Added Apache 2.0.

authors: roman-vynar vuhuy

repo: roman-vynar/random-scripts


text:
Request mechanics

For implement Request-Reply example needs write request function.
Inspired by other API:
let%lwt resp = Nats_client_lwt.request "greet.john" "" in
Lwt_io.printfl "got a response: %s" resp

Added not full implementation at d254b2e0b23ffab6053e877f95e7ca4c838e8014.

Added automatic inbox creation _INBOX.<sid> on make request. 7ed729fccacf4b1fd3a07631a249fcfe9999dfdb.


text:
bug(file read): ReadAllPosix check vector len before access

Signed-off-by: adi_holden adi@dragonflydb.io

In this loop we want to increment v to the index after preadv wrote.
while (v->iov_len <= size_t(read)) {  // pass through all completed entries.
--len;
read -= v->iov_len;
++v;
}
Before we enter the loop we must check in the while that len > 0.
example for violation in the old flow ReadAllPosix got vector v with count 1 and the iovec len is 1000, preadv can read up to 1000 bytes. In this can we enter the while first time dec len to 0, read dec to 0 and v incremented to the next index which is out of bound. We should not access v->iov_len in the next while check. It could be that v->iov_len equals 0, and from last loop we updated read to 0 and therefor we enter again and decrease len which will cause overflow.
Before accessing elements in v we must check that v is poiting to an index inside the vector given to ReadAllPosix

repo: romange/helio


text:
Update README

ohardy/dokku-volume has since been replaced with the official
dokku/docker-options. Updated README to reflect these configuration
changes.

That change is in dokku, but not dokku-alt, correct?

Ah correct. Feel free to close this and I can keep my fork as the dokku version :smile:

Do you think this can work with both? Can you update to have both sections in the doc?

authors: grantland romaninsh

repo: romaninsh/docker-wordpress

license: unlicense


text:
More than one HtmlWebpackPlugin

Hi,
I have two HtmlWebpackPlugin instances, to generate two separate indexes.
Is there a way to associate one App Manifest plugin to one of them and another one to the other?
Thank you

@luislobo  I'm trying add this options

authors: luislobo romanlex

repo: romanlex/app-manifest-webpack-plugin


text:
Update gh-pages

They currently consist only of the given template and should include the usage and some images of the project

would it be ok if I use docToolchain to render the docs?
https://doctoolchain.github.io/docToolchain/v2.0.x/

authors: rdmueller ronnypolley

repo: ronnypolley/posh-sdkman


text:
🛑 V2RAY 🇳🇱 Netherlands NLB 1 is down

In f032c7a, V2RAY 🇳🇱 Netherlands NLB 1 (https://nlv-1.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇳🇱 Netherlands NLB 1 is back up in 5275e0a.

repo: roosterkid/opentunnel-status-server


text:
🛑 TROJAN 🇸🇬 Singapore SGA 1 is down

In 3dcf9b2, TROJAN 🇸🇬 Singapore SGA 1 (https://sgt-3.opensvr.net/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: TROJAN 🇸🇬 Singapore SGA 1 is back up in 009345e.


text:
🛑 TROJAN 🇸🇬 Singapore SGV 1 is down

In 414834f, TROJAN 🇸🇬 Singapore SGV 1 (https://sgt-1.opensvr.net/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: TROJAN 🇸🇬 Singapore SGV 1 is back up in adc7a5e.


text:
🛑 TROJAN 🇭🇰 Hong Kong HKE 1 is down

In 54d2790, TROJAN 🇭🇰 Hong Kong HKE 1 (https://hkt-1.opensvr.net/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: TROJAN 🇭🇰 Hong Kong HKE 1 is back up in bdd96e3.


text:
🛑 V2RAY 🇺🇸 United States USO 1 is down

In f006b3e, V2RAY 🇺🇸 United States USO 1 (https://usv-4.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇺🇸 United States USO 1 is back up in 8891976.


text:
🛑 SSH 🇸🇬 Singapore XSG 2 is down

In 6f80965, SSH 🇸🇬 Singapore XSG 2 (http://xs-2.opensvr.net:8080/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: SSH 🇸🇬 Singapore XSG 2 is back up in f7fdca0.


text:
🛑 XRAY 🇸🇬 Singapore SGO 2 is down

In ab9b8f1, XRAY 🇸🇬 Singapore SGO 2 (https://sgx-3.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: XRAY 🇸🇬 Singapore SGO 2 is back up in 3bac6e6.


text:
🛑 V2RAY 🇸🇬 Singapore SGF 1 is down

In efeb810, V2RAY 🇸🇬 Singapore SGF 1 (https://sgv-1.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇸🇬 Singapore SGF 1 is back up in d5288db.


text:
🛑 V2RAY 🇮🇩 Indonesia IDA 2 is down

In 235bda8, V2RAY 🇮🇩 Indonesia IDA 2 (https://idv-3.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇮🇩 Indonesia IDA 2 is back up in beefc4e.


text:
🛑 V2RAY 🇫🇷 France FR 1 is down

In fe7c95f, V2RAY 🇫🇷 France FR 1 (https://frv-1.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇫🇷 France FR 1 is back up in ad7fd40.


text:
🛑 PPTP 🇺🇸 United States USF 1 is down

In f30ca5f, PPTP 🇺🇸 United States USF 1 (http://usp-1.optnl.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: PPTP 🇺🇸 United States USF 1 is back up in afe1cba.


text:
🛑 PPTP 🇮🇩 Indonesia IDJ 1 is down

In ec00716, PPTP 🇮🇩 Indonesia IDJ 1 (http://idp-2.opensvr.net/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: PPTP 🇮🇩 Indonesia IDJ 1 is back up in 65749f0.


text:
🛑 V2RAY 🇳🇱 Netherlands NLB 1 is down

In 8237235, V2RAY 🇳🇱 Netherlands NLB 1 (https://nlv-1.openv2ray.com/) was down:

HTTP code: 0
Response time: 0 ms

Resolved: V2RAY 🇳🇱 Netherlands NLB 1 is back up in df4fcf1.


text:
Multiprocessing demo of maslite / discuss further API needs.

In many agent based systems, communication has scale free distribution characteristics. This means that a lot of messages are exchanged within clusters of agents, whilst few messages are exchanged between clusters.
For the purpose of simulation, this means that there is a benefit is distributing the simulation to multiple cores and exploit the principles of multiprocessing.
Why not just keep things simple? Let's say that you want to run a simulation at 100x real-time, but you can't because there are 8 clusters of agents that have sufficiently large overhead and exchange numerous messages to cause you to slow down to a ${wall time}/{simulated time}$-relationship of 20x real-time. In other words, your simulation takes 5x as long to run as you would like. However you also know that None of the clusters individually run slower than +100x real-time. E.g. your clusters are fast enough individually.
It would hence be convenient to partition the system such that each cluster is on their own logical core.
Modern PC have many cores. I can for example log on to Azure and rent a 48 core machine with 1 Tb RAM for under $100 for an hour.

For problems where the clusters exceed the capacity of a single machine, I would have to partition the simulation over multiple machines and permit message exchange between the machines using sockets.
As the expansion from single core simulation to multi-core simulation is the first and most important step, I will in what follows present a simple recipe for such a configuration,  which I will explain step by step. The whole script is at the bottom of this post as mp_test.py so you won't need to copy paste the code.
A nice API.
The first thing we want is a nice API, but for multiprocessing we can't just launch a python process and split the scheduler: We need a parent-child relationship. In the snippet below, I have chosen MPmain as the parent, and MPScheduler as the child.
The MPScheduler is practically just a regular maslite.Scheduler with some multiprocessing switches added.
MPmain is a constructor for each subprocess so I've addede the method MPmain.new_scheduler() as a constructor of the  MPScheduler so it is packaged with all necessary the multiprocessing queues for message exchange between the processes.
To give this some context, I am setting up a simple and generic demonstration, where mpmain controls two schedulers
which each have two agents (4 agents in total).
We add the agents to either scheduler (=cluster/partition) and ask the first agent to obtain a signature from all other agents in the system. The agent which sees that all other agents have signed the message will abort further message exchange by sending a contract to mpmain which stops the simulation.
Here is the script:
def test_multiprocessing():
    """ Demonstrates the multiprocessing where mpmain has two schedulers
    which each have two agents (4 agents in total).

    Each agent decides at random who to send a message to.
    The demonstration stops when all messages have been signed by all agents.
    """
    with MPmain() as main:

        a1 = Agent(1,[2], everyone={1,2,3,4})
        a2 = Agent(2,[3], everyone={1,2,3,4})
        a3 = Agent(3,[4], everyone={1,2,3,4})
        a4 = Agent(4,[1], everyone={1,2,3,4})

        a1.inbox.append(ChainMsg(s=1, r=1))

        s1 = main.new_scheduler()
        s1.add(a1)
        s1.add(a2)

        s2 = main.new_scheduler()
        s2.add(a3)
        s2.add(a4)

        main.run()

if __name__ == "__main__":
    test_multiprocessing()

And this is the output:

We see how:

The agents are added.
The 2 schedulers are started.
How the first agent discovers the message and starts sending it to its peers.
That agent 4 detects that all have signed the message and creates the contract.
That the mpmain receives the contract and starts to shut the simulation down.
That the 2 scheduler receive the stop signal
And that mpmain acknowledges that the schedulers have stopped correctly.

When you run the code, you will notice that it takes about 1/2 a second to start and to stop the subprocesses. This is because python needs to copy the loaded variables from the main process to the subprocesses. For simulations with a large number of agents it could hence be more efficient to add a start-up process for each scheduler that loads what it needs to avoid the overhead of copying objects around. In this snippet however I'd rather leave it out, so and focus on the messaging.

At this point I'd like you to scroll to the bottom of this ticket and copy the code into a notepad so you have it next to this text.

In the code you will find two messages (ChainMsg and Contract) and a signal (Stop). These are trivial.
You will also find a new class Link which is a container for the interprocess communication between. There are to attributes:
    self.to_mp = ctx.Queue()
    self.to_proc = ctx.Queue()

These two queues are multiprocessing.Queues which enable the parent (main) process to send messages to the child process (to_proc) and back (to_mp) and hence is the only object that is shared.
Sharing any other type of object between processes will lead to synchronisation issues as the one process will hold python's GIL and lock the object. The good news, however is that you can send any python object from one process to the other using queue.put(obj) on the sender side and retrieve it on the other side using obj = queue.get_nowait().
The class MPmain has two methods that you may have come across before:
    def __enter__(self):
        return self

    def __exit__(self, exc_type, exc_val, exc_tb):  # signature requires these, though I don't use them.
        self._stop()

These methods enable us to use the class as a context manager, so that it works with the with statement, just like file handles where the file is closed when the with-block is left:
with myfile as fi:  # with-block.
    fi.read()  # inside with-block
# outside with-block

We need the context manager style to assure that the subprocesses shut down properly with we leave the context as a context managers __exit__ method always is called when an exception is raised.
For convenience, MPmain has the familiar api run to mirror the current schedulers top-level behaviour.
This brings us to the individual schedulers that host each cluster:  It is very similar to a typical maslite scheduler with some additional features for interprocess communication:
The toplevel runner has 4 steps:
    def run(self):
        while not self._quit:
            self.process_inter_proc_mail()  # [1]
            self.process_mail_queue()  # [2]
            self.update_agents()  # [3]

This run method is called automatically by mpmain when the simulation starts, so you need to do nothing.
Next is the method process_inter_proc_mail.
    def process_inter_proc_mail(self):
        while not self._quit:
            try:
                msg = self.mq_to_self.get_nowait()
                if isinstance(msg, ChainMsg):
                    self.mail_queue.append(msg)
                elif isinstance(msg, Stop):
                    print(f"{self.name} received stop signal")
                    self._quit = True
                    self.exit.set()
                    break
                else:
                    raise Exception(f"{msg}")
            except queue.Empty:
                return

This process looks at the message queue to self (self.mq_to_self) and tries to retrieve any pending messages and add them to it's main mail_queue.
Next, the run-loop processes the messages, just like the maslite scheduler.
    def process_mail_queue(self):
        for msg in self.mail_queue[:]:
            if msg.r in self.agents:  # if receiver is known ...
                agent = self.agents[msg.r]
                agent.inbox.append(msg)
            else:  # give it to main ...
                self.mq_to_main.put(msg)  #  Line 218
        self.mail_queue.clear()

This code should appear very familiar. The only new thing is the if-else clause where the scheduler concludes that if msg.receiver is not in self.agents then it must be a message for someone outside its cluster, and it puts the message onto the queue to main.
Finally, as the messages have been sorted to each of the agents, the agents are updated with the familiar method update_agents:
    def update_agents(self):
        for agent in self.agents.values():
            if agent.inbox:
                agent.update()

As you can see the system is very simple as there is no cognitive overhead for the developer. The only difference from the classical maslite.scheduler usage is that the developer needs to decide in which cluster to put the agent.
This brings me to the final note: Inter-process communication is a bit slower than within-process-communication, so if the agents communicate a lot outside their cluster, the system will seem slower (!) than running it conventionally. This is expected, and developer just needs to know this.
Here is the whole script:
#mp_test.py
import queue
import multiprocessing
from multiprocessing.context import BaseContext
from itertools import count
from random import choice
from time import process_time, sleep
import platform
default_context = "spawn" if platform.system() != 'Linux' else "fork"

class Stop:
    """ a simple stop signal."""

class ChainMsg:
    """ A standard message
    we send this message around for multiple agents to sign.
    Once all the agents have signed it, a contract message
    is created and sent to the main process.
    """
    ids = count(start=1)
    def __init__(self,s,r) -> None:
        self.id = next(ChainMsg.ids)
        self.s = s
        self.r = r
        self.signature = []
    def __str__(self) -> str:
        return f"Msg:({self.id} - {self.s}:{self.r}): {self.signature}"

class Contract:
    def __init__(self, s, signatures) -> None:
        self.s = s
        self.r = "nobody"
        self.signatures = signatures
    def __str__(self) -> str:
        return f"{self.s} received signatures from eveyone."

class Link:
    """ scaffolding to keep queues and subprocess together """
    def __init__(self,name, ctx) -> None:
        self.to_mp = ctx.Queue()
        self.to_proc = ctx.Queue()
        self.scheduler = MPScheduler(ctx=ctx, mq_to_main=self.to_mp, mq_to_self=self.to_proc, name=name)
    def start(self):
        self.scheduler.start()
    def is_alive(self):
        return self.scheduler.is_alive()
    @property
    def exitcode(self):
        return self.scheduler.exitcode

class MPmain:
    """ The main process for inter-process message exchange """
    def __init__(self, context=default_context) -> None:
        self._ctx = multiprocessing.get_context(context)

        self.links = []
        self.schedulers = {}

        self.agents = {}  # agent.id: proc.id
        self.finished = []
        self._quit = False

    def __enter__(self):
        return self

    def __exit__(self, exc_type, exc_val, exc_tb):  # signature requires these, though I don't use them.
        self._stop()

    def new_scheduler(self):
        name = str(len(self.schedulers)+1)
        link = Link(name, ctx=self._ctx)  # communication link between mpmain and a scheduler.
        self.schedulers[name] = link
        return link.scheduler

    def _start(self):
        procs = []
        for name, link in self.schedulers.items():
            for id in link.scheduler.agents.keys():
                self.agents[id] = name

            link.start()
            print(f"{name} starting")
            procs.append(link)

        while not all(p.is_alive() is True for p in procs):
            sleep(0.01)  # wait for the OS to launch the procs.
        print(f"all {len(self.schedulers)} started")

    def _stop(self):
        procs = []
        for link in self.schedulers.values():
            link.to_proc.put(Stop())  # send stop signal.
            procs.append(link)
            print(f"{link.scheduler.name} stopping")
        while any(p.is_alive() for p in procs):
            sleep(0.01)  # wait until all subprocesses have stopped.

        # multiprocessing can't shut down until all message queues are
        # empty, so we need to purge the system.
        for link in self.schedulers.values():
            assert isinstance(link, Link)
            while not link.to_mp.empty:
                _ = link.to_mp.get_nowait()
            while not link.to_proc.empty:
                _ = link.to_proc.get_nowait()
        print(f"all {len(self.schedulers)} schedulers stopped")

    def run(self, timeout=3):
        self._start()
        try:
            while not self._quit:
                if process_time() > timeout:
                    return
                self.process_mail_queue()
        except KeyboardInterrupt:
            pass

    def process_mail_queue(self):
        for name, link in self.schedulers.items():
            for _ in range(link.to_mp.qsize()):
                try:
                    msg = link.to_mp.get_nowait()
                    print(msg)
                    if isinstance(msg, Contract):
                        self.finished.append(msg.s)
                        if set(self.finished) == set(self.agents):
                            self._quit = True
                    elif isinstance(msg, ChainMsg):
                        link_name = self.agents[msg.r]
                        link = self.schedulers[link_name]
                        link.to_proc.put(msg)
                    else:
                        raise Exception(f"unhandled message type: {msg}")
                except queue.Empty:
                    if link.is_alive():
                        break  # break and move to next link.
                    elif link.exitcode == -9:
                        raise ChildProcessError(f"{name}:Out of memory")
                    elif link.exitcode != 0:
                        raise ChildProcessError(f"{name}: {link.exitcode}")
                    else:
                        raise Exception

class Agent:
    def __init__(self, id, peers, everyone) -> None:
        self.id = id
        if id in peers:
            raise ValueError("that's silly... ")
        self.peers = peers
        self.everyone = set(everyone)
        self.inbox = []
        self.scheduler = None

    def update(self):
        for msg in self.inbox:
            print(msg)
            self.new_message(msg)
        self.inbox.clear()

    def new_message(self, msg):
        msg.signature.append(self.id)
        if set(msg.signature) == self.everyone:
            # the message has been signed by everyone.
            # Now make the contract.
            self.send(Contract(s=self.id, signatures=self.everyone))
        else:
            msg.s = self.id
            msg.r = choice(self.peers)
            self.send(msg)

    def send(self, msg):
        self.scheduler.mail_queue.append(msg)

class MPScheduler:
    def __init__(self, ctx:BaseContext,
                 mq_to_main:multiprocessing.Queue,
                 mq_to_self:multiprocessing.Queue,
                 name: str) -> None:
        self.ctx = ctx
        self.exit = ctx.Event()
        self.mq_to_main = mq_to_main
        self.mq_to_self = mq_to_self
        self.process = ctx.Process(group=None, target=self.run, name=name, daemon=False)
        self.name = name
        self._quit = False

        self.agents = {}
        self.mail_queue = []

    def start(self):
        print("starting")
        self.process.start()

    def is_alive(self):
        return self.process.is_alive()

    @property
    def exitcode(self):
        return self.process.exitcode

    def add(self, agent):
        print(f"adding agent {agent.id}")
        agent.scheduler = self
        self.agents[agent.id] = agent

    def update_agents(self):
        for agent in self.agents.values():
            if agent.inbox:
                agent.update()

    def process_mail_queue(self):
        for msg in self.mail_queue[:]:
            if msg.r in self.agents:  # if receiver is known ...
                agent = self.agents[msg.r]
                agent.inbox.append(msg)
            else:  # give it to main ...
                self.mq_to_main.put(msg)
        self.mail_queue.clear()

    def process_inter_proc_mail(self):
        while not self._quit:
            try:
                msg = self.mq_to_self.get_nowait()
                if isinstance(msg, ChainMsg):
                    self.mail_queue.append(msg)
                elif isinstance(msg, Stop):
                    print(f"{self.name} received stop signal")
                    self._quit = True
                    self.exit.set()
                    break
                else:
                    raise Exception(f"{msg}")
            except queue.Empty:
                return

    def run(self):
        while not self._quit:
            self.process_inter_proc_mail()
            self.process_mail_queue()
            self.update_agents()

def test_multiprocessing():
    """ Demonstrates the multiprocessing where mpmain has two schedulers
    which each have two agents (4 agents in total).

    Each agent decides at random who to send a message to.
    The demonstration stops when all messages have been signed by all agents.
    """
    with MPmain() as main:

        a1 = Agent(1,[2], everyone={1,2,3,4})
        a2 = Agent(2,[3], everyone={1,2,3,4})
        a3 = Agent(3,[4], everyone={1,2,3,4})
        a4 = Agent(4,[1], everyone={1,2,3,4})

        a1.inbox.append(ChainMsg(s=1, r=1))

        s1 = main.new_scheduler()
        s1.add(a1)
        s1.add(a2)

        s2 = main.new_scheduler()
        s2.add(a3)
        s2.add(a4)

        main.run()

if __name__ == "__main__":
    test_multiprocessing()
    # output:
    # -------------------------------
    # adding agent 1
    # adding agent 2
    # adding agent 3
    # adding agent 4
    # starting
    # 1 starting
    # starting
    # 2 starting
    # all 2 started
    # Msg:(1 - 1:1): []
    # Msg:(1 - 1:2): [1]
    # Msg:(1 - 2:3): [1, 2]
    # Msg:(1 - 2:3): [1, 2]
    # Msg:(1 - 3:4): [1, 2, 3]
    # 4 received signatures from eveyone.
    # 1 stopping
    # 2 stopping
    # 1 received stop signal
    # 2 received stop signal
    # all 2 schedulers stopped

In branch mp I've run the latest example of test_multi_processing_advanced.py with pypy310 with pytest installed in the virtual environment (see pypy for details)
The test is here: https://github.com/root-11/maslite/blob/mp/tests/test_multi_processing_advanced.py
This test is written in "old style" so that the clock doesn't progress whilst the agents are negotiating. However, when the agents are idle the clock jump to the next alarm.
At the bottom of the test, you will find stdtout with the line 513:     # wall time: 0.047859992999292444 / sim time: 4.75 = 99.25X


text:
Smtp Problem (external email client)

Hello,
i'm can't send email from a external email client (thunderbird)
I receive this message when i try:
Um erro (SMTP) ocorreu ao enviar mensagens.
Resposta do servidor: “5.7.1 : Data command rejected: Blocked - contact postmaster@vmail.me for help - Suspicious HELO [[192.168.1.4]] and missing reverse DNS [177.133.180.68]”.

Hi,
I have the same exact issue. I also use Thunderbird.
Alert
An Outgoing server (SMTP) error occurred while sending mail. The server responded:  5.7.1 : Data command rejected: Blocked - contact postmaster@vmail.me for help - Suspicious HELO [...] and missing reverse DNS [...].

Sorry for the necromancy, but I have the same problem. It seems to be related to postfwd...

authors: gabrielfedel igel-kun jpmorg

repo: root-io/vmail


text:
kubectl get csr    No resources found. CSR请求存留时间只有1小时

环境
k8s  csr证书签发后，签发记录存留时间只有1小时。过后再查看签发记录就查不到了。
请问如何调整存留时间？
1小时之前。还能查到签发记录，如下：
[root@kubernetes-master2 ~]# kubectl get csr
NAME                                                   AGE       REQUESTOR           CONDITION
node-csr-LbiAcWkdBA9dbA8fQSNmFArFNcoTtqWR1PTzB4BOpKE   55m       kubelet-bootstrap   Approved,Issued

1小时后，查不到签发记录了
[root@kubernetes-master2 ~]# kubectl get csr
No resources found.

这个问题解决了没，我也遇到了

这个问题解决了没，我也遇到了

这个问题时间太过久远，长时间没有追问，关闭问题。如有后续进展请在 issue 中回复。

authors: arsenalpoll baijt rootsongjc

repo: rootsongjc/kubernetes-handbook


text:
nginx: [emerg] cannot load certificate

Hello
After a system upgrade, LnBits, the raspiblitz webui and certainly other services no longer work.
RTL works without problems and receiving and sending also works.
DEBUG OUTPUT: https://l.termbin.com/9pgw
output of :
  ₿ sudo nginx -t
  nginx: [emerg] cannot load certificate "/mnt/hdd/app-data/nginx/tls.cert": BIO_new_file() failed (SSL: error:02001002:system
  library:fopen:No such file or directory:fopen('/mnt/hdd/app-data/nginx/tls.cert','r') error:2006D080:BIO routines:BIO_new_file:no such file)
  nginx: configuration file /etc/nginx/nginx.conf test failed

An "apt update" and "apt upgrade" was aborted with an error message: https://pastebin.com/rsY3GpLv
Using "sudo apt-get install -f" as well as "sudo dpkg --configure -a" prints the same error.
The file "fullchain.cer" is actually not located in the linked directory.
I suspect the error is this missing certificate.
Unfortunately, my knowledge of servers is slightly limited and I can not solve the problem without help.
warm greetings

Have you already tried to flash a new sd card and let the system recover? You can use the new v1.9.0 Release Candidate image for this - see: https://github.com/rootzoll/raspiblitz/tree/v1.9#downloading-the-software

Yes. I performed a system restore with version 1.8.0c. Unfortunately it brought the same result.
I will gladly try a rescue with the RC 1.9.0.

Restoration with the version 1.9.0 ran without errors, but the problem was not fixed.
https://l.termbin.com/os60

Did you just ran a "recover" or did you tried the LND rescue file import in a fresh setup?

Hello
I caused this error and it was not caused by the Raspiblitz software.
Explanation:
I suspect that the loss of the certificate was caused by a previous malfunction.
Because, after an ordinary LND update (to version 0.15.5-beta) , the SSD was not mounted after the reboot.
Unfortunately I was too lazy to fix this circumstance and updated to version 1.8.0c instead. After that the link to the "fullchain.cer" was broken.
Actually I should have only checked and changed the UUID in the fstab. Then I would not have had this problem now. And this is a really big problem.
As I wrote in the beginning, I don't have enough knowledge about the behavior of certificates and web servers.
I will have another look at the problem this weekend and if I don't find a solution, I will close all channels and reinstall the Raspiblitz.
Translated with www.DeepL.com/Translator (free version)

repo: rootzoll/raspiblitz


text:
Fatal LevelDB error: Corruption: 87 missing files

Guys,
suddenly my node stopped working. I've been browsing through but did not find the exact same problem. It seems some kind of database corruption, files missing...

*** RASPIBLITZ LOGS ***
blitzversion: 1.0
chainnetwork: bitcoin / main
11:48:44 up  2:03,  2 users,  load average: 1,03, 1,13, 1,12
*** CHAINNETWORK SYSTEMD STATUS ***
● bitcoind.service - Bitcoin daemon
Loaded: loaded (/etc/systemd/system/bitcoind.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Wed 2019-03-13 11:48:23 -03; 20s ago
Process: 8583 ExecStart=/usr/local/bin/bitcoind -daemon -conf=/home/bitcoin/.bitcoin/bitcoin.conf -pid=/home/bitcoin/.bitcoin/bitcoind.pid (code=exited, status=0/SUCCESS)
Main PID: 8584 (code=exited, status=1/FAILURE)
mar 13 11:48:23 ZePikeno systemd[1]: bitcoind.service: Unit entered failed state.
mar 13 11:48:23 ZePikeno systemd[1]: bitcoind.service: Failed with result 'exit-code'.
*** LAST 20 CHAINNETWORK LOGS ***
2019-03-13T14:47:35Z Loaded best chain: hashBestChain=000000000000000000132b16efbd0c357520e45a9ae6de25faa9ddb1d133cb21 height=566760 date=2019-03-12T14:24:58Z progress=0.999462
2019-03-13T14:47:35Z init message: Rewinding blocks...
2019-03-13T14:47:48Z init message: Verifying blocks...
2019-03-13T14:47:48Z Verifying last 6 blocks at level 3
2019-03-13T14:47:48Z [0%]...[16%]...[33%]...[50%]...[66%]...[83%]...[99%]...[DONE].
2019-03-13T14:48:21Z No coin database inconsistencies in last 6 blocks (14785 transactions)
2019-03-13T14:48:21Z  block index           90753ms
2019-03-13T14:48:21Z Opening LevelDB in /mnt/hdd/bitcoin/indexes/txindex
2019-03-13T14:48:22Z Fatal LevelDB error: Corruption: 87 missing files; e.g.: /mnt/hdd/bitcoin/indexes/txindex/014533.ldb
2019-03-13T14:48:22Z You can use -debug=leveldb to get more complete diagnostic messages
2019-03-13T14:48:22Z

EXCEPTION: 15dbwrapper_error
Fatal LevelDB error: Corruption: 87 missing files; e.g.: /mnt/hdd/bitcoin/indexes/txindex/014533.ldb
bitcoin in AppInit()
2019-03-13T14:48:22Z Shutdown: In progress...
2019-03-13T14:48:22Z scheduler thread interrupt
2019-03-13T14:48:22Z Shutdown: done
Can you help me please?

your blockchain DB got corrupted somehow. How long was this node running before this happened?
How much free space is on your SD card?... sudo df -h
Not sure what you can do other than downloading it and re-sync again.  Maybe you can connect your HDD to a notebook and reindex it on that?

Ive been running it for a week. I have currently 30 Gb of space, did that change in the rotating file.
Probably this is due to power shortage last night...
If I download bitcoin core on windows desktop and use this HDD with it, will I be able to reindex it and use it again on Pi?

Ive been running it for a week. I have currently 30 Gb of space, did that change in the rotating file.
Probably this is due to power shortage last night...
If I download bitcoin core on windows desktop and use this HDD with it, will I be able to reindex it and use it again on Pi?

I think so yes.  You might want to first check the HD for problems:
https://www.tecmint.com/check-linux-hard-disk-bad-sectors-bad-blocks/

Hard to tell. Repeated blockchain corruption problems could be hardware related.  A bad power supply or unreliable hard disk?

@zuardi closing - let us know if this is still an issue.

authors: fluidvoice frennkie zuardi


text:
🛑 Oshi is down

In 1bb1156, Oshi (https://oshi.at) was down:

HTTP code: 0
Response time: 0 ms

Resolved: Oshi is back up in 0f507ce after 15 minutes.

repo: roozbehzarei/filester-status


text:
Makefile Standardization

Instead of having make take care of installation as well as the initial project build, this new Makefile is separated into two major parts for installation

Project build
Kernel installation

Each operation is side-effect free and disjoint from the other operations. This method of separation is somewhat standard among projects that need to be built, and it would be good to keep with that. Anyone initially downloading the project will expect this separation.

Hi @willzfarmer,
Thanks for the awesome contribution and sorry for the delay in getting to this. You are totally right, I have some other projects that could use that separation as well. I added you as a contributor so you can push to the repository in the future.

Awesome, thanks! I'm really looking forward to using this in the coming months!

authors: roryk willzfarmer

repo: roryk/clojupyter


text:
Propagate the node clock and logging interface to ResourceManager

Needs: https://github.com/ros-controls/ros2_control/pull/1585
This changes helps to use the clock and logging interface of the node directly.

@ahcorde can you also tag the rolling branch of this repo as well. Anyway, we won't be making any releases so it shouldn't affect anyone.


text:
Error mimic_joints [ROS Jazzy + Gazebo Harmonic]

Hi,
I am testing ROS Jazzy + Gazebo Harmonic :
ros2 launch gz_ros2_control_demos gripper_mimic_joint_example_position.launch.py
I am getting the following error:
[Err] [Physics.cc:1726] Attempting to create a mimic constraint for joint [left_finger_joint] but the chosen physics engine does not support mimic constraints, so no constraint will be created.

Could you indicate if this is a bug or if there is a workaround?
Thanks for advance.

I just tested this now, I get the same error message but the demo works as expected. Can you confirm this?
I'm not sure if something changes with gazebo, or if I just haven't seen the error message when I was rewriting the mimic parts lately. The mimic feature in gz-sim is there already since last year.
Maybe one has to deactivate the mimic behavior of gz_ros2_control if the bullet-featherstone physics engine is used.

Hi @christophfroehlich,
Control manager loads correctly:

Could you tell how to change or disable bullet-featherstone physics?

but the system works as it is, doesn't it?this plugin handles the mimic joint. just ignore the error..

Yes.

The mimic joint feature is only available in Gazebo if you're using bullet-featherstone (see https://github.com/gazebosim/gz-sim/pull/1838). Is gz_ros2_control emulating mimic joints somehow for DART?

yes, it mimics the joint and sends "the same" commands to the mimicking joint. (see #276 and earlier PRs)

Ah, I see. The Bullet-featherstone implementation is different in that any resistance force felt by the mimicking joint is also applied to the mimicked joint. So the mimicking goes both ways, applying forces as well as receiving forces.  This kind of functionality (bilateral constraint on the joint) is not available in DART, so mimic joints are not available in Gazebo when DART is chosen as the physics engine. That's what the error message is trying to convey.

Hi @azeey,
I have changed the physics engine from DART to Bullet and now everything works correctly.

authors: LuisYordano azeey christophfroehlich


text:
Resize image for larger than 4GB output image

Hi,
I want to install some amount of stuff which will lead to an output image larger than 4GB. The downloaded raspberry pi image is 4GB, and then while I'm installing some packages in my phase1-target script I get:
[...]
Selecting previously unselected package linux-modules-extra-5.15.0-83-generic.
Preparing to unpack .../21-linux-modules-extra-5.15.0-83-generic_5.15.0-83.92_arm64.deb ...
Unpacking linux-modules-extra-5.15.0-83-generic (5.15.0-83.92) ...
dpkg: error processing archive /tmp/apt-dpkg-install-xpMDy0/21-linux-modules-extra-5.15.0-83-generic_5.15.0-83.92_arm64.deb (--unpack):
 cannot copy extracted data for './lib/modules/5.15.0-83-generic/kernel/drivers/media/test-drivers/vivid/vivid.ko' to '/lib/modules/5.15.0-83-generic/kernel/drivers/media/test-drivers/vivid/vivid.ko.dpkg-new': failed to write (No space left on device)
No apport report written because the error message indicates a disk full error
                                                                              dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
[...]

It seems that the image is not resized after download and that we're not able to install everything we want.
Is it possible to add a step to resize this image before executing scripts ?
Teusner

Ok, maybe I posted this issue too quickly.
If you search the same option than me, everything is configured here:
https://github.com/ros-realtime/ros-realtime-rpi4-image/blob/master/image_builder/data/jammy-rt/config.ini#L10C1-L12C16
There is a shrink step which is performed on the image ... You could put a size different of 4GB
Teusner


text:
update readme badge and instructions for humble (backport)

Signed-off-by: Kenji Brameld kenjibrameld@gmail.com

Why is the rolling CI runing and not the humble one.....?


text:
vmrc: 0.3.0-1 in 'kinetic/distribution.yaml'

Initial release:

Upstream repository: https://bitbucket.org/osrf/vmrc
Release repository: https://bitbucket.org/osrf/vmrc-release
distro file: kinetic/distribution.yaml

@caguero Looking at the logs, it looks like this had a few different failures:

vmrc is in the wrong "place" in the rosdistro file, so it is not in alphabetical order: https://travis-ci.org/ros/rosdistro/jobs/434817043#L732
It couldn't verify the remote type of hg for at least part of it at: https://travis-ci.org/ros/rosdistro/jobs/434817043#L7436.  I think this led to the rest of the failures, though I'm not sure about that.

Rather than trying to fix these by hand, my suggestion here is to close this out and try to use bloom-release to do the releases here.  That should do more of what you want in an automated way.

authors: caguero clalancette

repo: ros/rosdistro


text:
Updating rr_openrover_basic package

Adding package to melodic, and updating release repo for kinetic

Thanks for the contribution.
It will be much better if you split this into two separate pull requests.  The basic reason is that the sync schedules for Kinetic and Melodic are not synced, so it may be the case that this gets held up because of one or the other of them.  The other reason is that it is good to keep the PRs confined to a single thing so we can easily look at the history and/or revert later if needed.
Additionally, this PR looks like it failed CI.  It failed because the release repository at https://github.com/RoverRobotics-release/rr_openrover_basic-release.git isn't set up properly.  In order to setup that release repository, you'll have to follow the steps at http://wiki.ros.org/bloom/Tutorials/FirstTimeRelease .  I'm going to close this PR for now, but once you have fixed these things, please open new PRs (bloom will do this for you).

Will do, thanks for the advice


text:
cob_gazebo_plugins: 0.7.4-1 in 'kinetic/distribution.yaml' [bloom]

Increasing version of package(s) in repository cob_gazebo_plugins to 0.7.4-1:

upstream repository: https://github.com/ipa320/cob_gazebo_plugins.git
release repository: https://github.com/ipa320/cob_gazebo_plugins-release.git
distro file: kinetic/distribution.yaml
bloom version: 0.9.3
previous version for package: 0.7.3-1

cob_gazebo_plugins

No changes

cob_gazebo_ros_control
* Merge pull request #41 <https://github.com/ipa320/cob_gazebo_plugins/issues/41> from fmessmer/ci_updates
  [travis] ci updates
* catkin_lint fixes
* Merge pull request #40 <https://github.com/ipa320/cob_gazebo_plugins/issues/40> from fmessmer/fix_warnings
  fix catkin_package DEPENDS warning
* fix catkin_package DEPENDS warning
* Contributors: Felix Messmer, fmessmer

Holding for sync

authors: fmessmer tfoote


text:
(contributing) Add guidelines for anchoring and aliasing of pip entries

As discussed in #28891
Fixes #28891

@cottsay @ivanpauno friendly ping ;)

@cottsay @ivanpauno ping ;)

@MatthijsBurgh thanks for iterating with our team to propose a solution. I'm glad we came up with something that while a bit rough, is no rougher than the problem space, and has an explicit expiration date.

authors: MatthijsBurgh nuclearsandwich


text:
irobot_create_msgs: 2.1.0-1 in 'humble/distribution.yaml' [bloom]

Increasing version of package(s) in repository irobot_create_msgs to 2.1.0-1:

upstream repository: https://github.com/iRobotEducation/irobot_create_msgs.git
release repository: https://github.com/ros2-gbp/irobot_create_msgs-release.git
distro file: humble/distribution.yaml
bloom version: 0.11.2
previous version for package: null

irobot_create_msgs
* rename DockServo action into Dock and Dock msg into DockStatus
* Contributors: Alberto Soragna

@clalancette  Is it required that an entry have a 'status' field? I didn't see it mentioned in the docs.

@clalancette Is it required that an entry have a 'status' field? I didn't see it mentioned in the docs.

Good question.  I think the answer is 'no', as we have at least one example in Humble currently that does not have it: https://github.com/ros/rosdistro/blob/306acc05a8de06b506aaf722670b01911036010c/humble/distribution.yaml#L69-L78

authors: alsora clalancette mjeronimo


text:
Service Call Hangup

I'd like to preface this with I am not quite sure yet if this is an rmw_zenoh issue or an eclipse zenoh/zenoh-c issue.
Some basic system information :
Platform: Ubuntu 24.04
Rustc: 1.75.0
GCC: 9.5.0
ROS2 packages: latest rolling as of 03/27/2024, built from source (will try to reproduce w/ latest and greatest today)
The issue:
It seems that when making service calls to a ROS2 node that the service call will hangup and not return (or even just segfault as I have seen, but that was only reproducible w/ custom debug builds), however this has only been observed to occur under some specific circumstances. Firstly, the server node in this case must be logging via the RCLCPP_* calls (we use RCLCPP_INFO for example). Secondly, there should be a publisher node that the server is subscribed to. We are publishing ~245 KiB at a rate of  50 Hz, so about 12 MiB/s. The second step isn't strictly necessary, but it seems to help trigger the issue. In my debug builds I didn't need to run the publisher node.
Through my own debugging it seems that an indefinite wait occurs here (https://github.com/eclipse-zenoh/zenoh/blob/05b9cb459f77693bbf7c89d67265ba1519959814/zenoh/src/net/routing/dispatcher/pubsub.rs#L435) waiting for the writer to release its hold of the RwLock. I have been unsuccessful in determining where that writer lock is being acquired, if that is in fact what is going on here, however as acquiring said lock is done via an RwLockWriteGuard object, whenever that object is dropped/goes out of scope, ownership should at that point be relinquished and the reader free to acquire the lock. I've also inspected the call stacks of other threads and did not observe any lingering RwLockWriteGuard's still on the stack.
This problem occurs in both normal operation and shared_memory mode.
An interesting note too is that directly publishing to /rosout is not sufficient to trigger the bug -- logging MUST be via the RCLCPP_* interface.
I will update this issue as I make more debugging progress.
To reproduce:
Build and run the Docker container located here: https://github.com/jackg0/ros2_simple_tests
Launch the zenoh router via ros2 run rmw_zenoh_cpp rmw_zenohd
Launch both the simple server and the simple publisher
Trigger the issue via making service calls to the server with ros2 service call /simple_server/trigger std_srvs/srv/Trigger
I hope that this information can provide some insight and as I said above I will be actively debugging this myself and providing updates as they come.

For sanity check, does the system work as expected with rmw_fastrtps_cpp and rmw_cyclonedds_cpp?

I ran the test files in a Iron setup (not in Docker) with rmw_cyclonedds_cpp and rmw_zenoh_cpp (both rolling and https://github.com/ros2/rmw_zenoh/pull/146 branches).
The ros2 service call /simple_server/trigger std_srvs/srv/Trigger  was always successful.
Could it be a temporary issue with rclcpp in Rolling or with your Dockerized environment ?

Apologies for not getting back to you for so long.
I've done some more testing and have confirmed on both Rolling and Jazzy that the issue is still present and can be triggered by the same steps as described in the issue. I will say that it may take a fair bit of service calls to trigger the hang up, so I would recommend doing something like:
while true; do
ros2 service call /simple_server/trigger std_srvs/srv/Trigger;
done

Also it does not appear to occur w/ other RMW's.
I don't have any other updates on this issue, but just wanted to get back to you guys on this.

@bagelbytes61 thanks for following up. Could I confirm that you tested after https://github.com/ros2/rmw_zenoh/pull/134 was merged? (You'll need to do a clean build and also ensure you kill the daemon with ros2 daemon stop before that)

@bagelbytes61 I'm unable to reproduce the issue with the latest rolling branch in rmw_zenoh.
I've been continuously making the service call for over 15mins now and am able to get a successful response each time. See video below for a snippet from this test (the warning can be ignored as it is a known issue and caused by something else).
https://github.com/ros2/rmw_zenoh/assets/13482049/b50593e5-eba2-4e81-a26c-ad0fa5d04802

Hmm. Interesting. Could I ask which version of rustc you are using to compile zenoh-c? I have been using 1.75.0, though I just tried 1.78.0 and experienced the same behavior. Also could I ask about your environment? I am using a fresh Ubuntu 24.04 virtual machine that I apt install'd ros-rolling-desktop onto and built the rmw_zenoh_cpp package with GCC 13.2.0 and rustc 1.75/1.78.

I'm compiling with 1.75.0 rustc.
Clean Ubuntu 24.04 but I have ROS 2 Rolling built from source. I don't see the problem with Iron binaries on 22.04 either.
I do have everything built in Release mode.
When you start continuously making service calls, do you see the problem immediately or after several minutes? I could try running my test for longer...

Okay I was able to reproduce it after running for a longer time.

@bagelbytes61 I opened PR https://github.com/jackg0/ros2_simple_tests/pull/3 to add a script that creates a node which makes the service calls indefinitely. I've had this script running for over 2 hours now without any hangup issues.
There is one big difference between between this script and running ros2 service call ... within a bash while loop. In the former, the ROS context and hence zenoh session is created once and then service calls are made indefinitely. In the latter, the context and session is created each time the ros2 service call command is run and more importantly destructed each time. There are some known issues related to shutting down the zenoh session eg. https://github.com/ros2/rmw_zenoh/issues/170 and when handling SIGINT signal in rclpy which I suspect may be the root cause.

We refactored a lot of this earlier this year, so I believe that this issue is fixed.  Because of that, I'm going to close this out.  If that is not the case, please feel free to reopen and we can debug some more.

authors: JEnoch Yadunund bagelbytes61 clalancette


text:
Support service generation on action folders

Closes #11. Connected to ros2/rosidl#301. This pull request is part of a series of pull requests that make the necessary changes to allow us to build .srv files outside an srv folder.
connects to ros2/rosidl#301

@sloretz How's your setup? How are you reproducing this? I'm unable to (i.e. they connect just fine).

How's your setup? How are you reproducing this?

@hidmic
Repos
repositories:
  ros2/rcl_interfaces:
    type: git
    url: https://github.com/ros2/rcl_interfaces.git
    version: sloretz/msg_srv_in_action
  ros2/rosidl:
    type: git
    url: https://github.com/ros2/rosidl.git
    version: hidmic/prepare_for_action_generation
  ros2/rosidl_dds:
    type: git
    url: https://github.com/ros2/rosidl_dds.git
    version: hidmic/prepare_for_action_generation
  ros2/rosidl_python:
    type: git
    url: https://github.com/ros2/rosidl_python.git
    version: apojomovsky/allow_generating_msg_and_srv_in_action
  ros2/rosidl_typesupport:
    type: git
    url: https://github.com/ros2/rosidl_typesupport.git
    version: hidmic/prepare_for_action_generation
  ros2/rosidl_typesupport_connext:
    type: git
    url: https://github.com/ros2/rosidl_typesupport_connext.git
    version: hidmic/subfolder_aware_srv_generation
  ros2/rosidl_typesupport_fastrtps:
    type: git
    url: https://github.com/ros2/rosidl_typesupport_fastrtps.git
    version: apojomovsky/subfolder_aware_srv_generation
  ros2/rosidl_typesupport_opensplice:
    type: git
    url: https://github.com/ros2/rosidl_typesupport_opensplice.git
    version: sservulo/prepare_for_action_generation
  ros2/system_tests:
    type: git
    url: https://github.com/ros2/system_tests.git
    version: hidmic/namespace-messages-with-subfolder

Client
from test_msgs.action import Primitives

import rclpy

def main(args=None):
    rclpy.init(args=args)
    node = rclpy.create_node('minimal_client')
    cli = node.create_client(Primitives, 'add_two_ints')

    req = Primitives.Request()
    req.int8_value = 41
    req.int16_value = 1
    while not cli.wait_for_service(timeout_sec=1.0):
        node.get_logger().info('service not available, waiting again...')

    future = cli.call_async(req)
    rclpy.spin_until_future_complete(node, future)

    if future.result() is not None:
        node.get_logger().info(
            'Result of add_two_ints: for %d + %d = %d' %
            (req.int8_value, req.int16_value, future.result().int32_value))
    else:
        node.get_logger().info('Service call failed %r' % (future.exception(),))

    node.destroy_node()
    rclpy.shutdown()

if __name__ == '__main__':
    main()

server
from test_msgs.action import Primitives

import rclpy

g_node = None

def add_two_ints_callback(request, response):
    global g_node
    response.int32_value = request.int8_value + request.int16_value
    g_node.get_logger().info(
        'Incoming request\na: %d b: %d' % (request.int8_value, request.int16_value))

    return response

def main(args=None):
    global g_node
    rclpy.init(args=args)

    g_node = rclpy.create_node('minimal_service')

    srv = g_node.create_service(Primitives, 'add_two_ints', add_two_ints_callback)
    while rclpy.ok():
        rclpy.spin_once(g_node)

    # Destroy the service attached to the node explicitly
    # (optional - otherwise it will be done automatically
    # when the garbage collector destroys the node object)
    g_node.destroy_service(srv)
    rclpy.shutdown()

if __name__ == '__main__':
    main()

Terminal 1
export RMW_IMPLEMENTATION=rmw_connext_cpp
python3 path/to/service_action.py

Terminal 2
export RMW_IMPLEMENTATION=rmw_connext_cpp
python3 path/to/client_action.py

Terminal  1 output is blank.
Terminal 2 output prints that the service is unavailable
python3 src/ros2/examples/rclpy/services/minimal_client/client_action.py
RTI Data Distribution Service Non-commercial license is for academic, research, evaluation and personal use only. USE FOR COMMERCIAL PURPOSES IS PROHIBITED. See RTI_LICENSE.TXT for terms. Download free tools at rti.com/ncl. License issued to Non-Co
mmercial User license@rti.com For non-production use only.
Expires on 00-jan-00 See www.rti.com for more information.
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...
[INFO] [minimal_client]: service not available, waiting again...

Using rmw_fastrtps_cpp or rmw_opensplice_cpp the service server and client connect fine.

Ok, given that we have green light I'm proceeding to merge this and its related PRs

authors: apojomovsky hidmic sloretz


text:
Linting/fix rviz rendering followup

Addresses follow up issues of #34 that were raised in pr #67.
The renaming of the headers to hpp is required for a up-to-date cppcheck which we introduced in the Windows build.

There is a remaining code style issue: relative paths in includes, sometimes even in the the form ./header.hpp. As the google style guide https://google.github.io/styleguide/cppguide.html#Names_and_Order_of_Includes also suggests to not use this notation I would like to replace that. What do you think @wjwwood ?


text:
Activities

An activity is a group of recursive events.
TODO:

I would cool it a project, not an activity.

authors: maria mariuscoto

repo: rosedu/events


text:
Unable to run script without NET 8

Describe the bug
Installed sdks and runtimes:
> dotnet --list-sdks
6.0.400
7.0.300-preview.23179.2

> dotnet --list-runtimes
Microsoft.AspNetCore.App 5.0.17
Microsoft.AspNetCore.App 6.0.8
Microsoft.AspNetCore.App 6.0.15
Microsoft.AspNetCore.App 7.0.4
Microsoft.NETCore.App 5.0.17
Microsoft.NETCore.App 6.0.8
Microsoft.NETCore.App 6.0.15
Microsoft.NETCore.App 6.0.25
Microsoft.NETCore.App 7.0.4
Microsoft.WindowsDesktop.App 5.0.17
Microsoft.WindowsDesktop.App 6.0.8
Microsoft.WindowsDesktop.App 6.0.15
Microsoft.WindowsDesktop.App 6.0.25
Microsoft.WindowsDesktop.App 7.0.4

Targeting .NET 6 and 7:
CS1705: Assembly 'RoslynPad.Runtime' with identity 'RoslynPad.Runtime, Version=4.8.0.0,
Culture=neutral, PublicKeyToken=null' uses 'System.Runtime, Version=8.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a' which has a higher version than referenced assembly
'System.Runtime' with identity 'System.Runtime, Version=6.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a'

Targeting .NET Framework x86:
Unhandled Exception: System.TypeInitializationException: The type initializer for
'<Module>' threw an exception. ---> System.BadImageFormatException: Could not load
file or assembly 'RoslynPad.Runtime, Version=4.8.0.0, Culture=neutral, PublicKeyToken=null'
or one of its dependencies. An attempt was made to load a program with an incorrect format.
   at ModuleInitializer.Initialize()
   at .cctor()
   --- End of inner exception stack trace ---

Only .NET Framework x64 works.
Version

OS: Windows 11 23H2 (Build 22631.2793)
Build (or commit ID if built from source): Windows Store version (the RoslynPad assembly inside said 09744851c820ab18d5209cd2b1dcb20750605f1a)

Dup #503

repo: roslynpad/roslynpad


text:
Cycle\Database\Exception\StatementException SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY client.id ASC' at line 8

What steps will reproduce the problem? Going into Invoice.... View
What is the expected result? View the basic index
What do you get instead? The  above message.
Additional info

Q
A

Version
1.0.?

PHP version
8.2

Operating system
Windows 10

config...common...params...MODE_READ_AND_WRITE revert back.

Throw the user out of the index view to the client view if this is the case.


text:
Snackbars don't go above the bottom bar with attachShy()

I give my snackbar the root CoordinatorLayout and it was showing above the bottom bar when using just attach(this, ...) (as described in the issue  "Snackbars should go above the bottom bar. #36" ) but when I now use attachShy() it overlaps the bottom bar.

I'm in same situation.
I had problem using BottomBar.attach(this,...) using CoordinatorLayout (the view doesn't match the parent) so I user BottomBar.attachShy(...) and view was ok, but snackbar overlaps bottom bar yet.

@roughike I got a strage case related this problem.
I'm studying your library and I see this tutorial: with 3 elements all is ok bottom bar is grey and snackbar doesn't overlap bar, but when I add 2 elements I get a lot of space above toolbar (like this issue), bottom bar becomes blue and snackbar overlaps it.

@roughike This is due to CoordinatorLayout adding the snackbar at z order that makes your BottomBar have lower z index than the snackbar view. I had this issue in my lib. Take a look how I solved it here.  PreLollipopBottomNavWithSnackBarImpl inner class. Basically, calling child.bringToFront() allowed me to ask CoordinatorLayout to grant my layout same z order as before just at same moment the snackbar is added to the CL.

@roughike I didnt have issues on APIs that support elevation because the bottom bar should be always above snackbar as said in specs. On older apis I had to reorder the layout to front so Snackbar now is below my layout.

@chemickypes Fixed in PR #111. @roughike please review it

@roughike This is basically, what I said in the comment. The code is copied from my library and works flawlessly with yours. :)

authors: NikolaDespotoski chemickypes polyvjk

repo: roughike/BottomBar


text:
Submitting a 'test issue' from Github directly as a contributor

Just a test...

This issue was only created for testing the backlog sorting functions.

authors: ntsjenkins terminalstderr

repo: routeviews/public-issues


text:
Trendline will not extend beyond xExtents

I thought XLINE or RAY will literally extend the line to infinity but it only draws as far as the date range goes. I looked at the source code a bit but I cannot see why the line is being clipped. Could you offer some hints at how to do this? Would love to help, great library.

you are right, it must be possible to fix, let me take a look

fixed in 0.7.0-beta.10 check the updated example which uses RAY http://rrag.github.io/react-stockcharts-next/documentation.html#/trendline
in case you were using 0.6 be sure to check out the breaking changes

authors: rrag xlphs

repo: rrag/react-stockcharts


text:
AD410 not reporting button doorbell button presses

I've been monitoring binary_sensor.front_doorbell_button_pressed and binary_sensor.front_doorbell_call_no_answered, and unfortunately neither of them report the doorbell button press consistently. button_pressed doesn't change state at all, which I expected; call_no_answered changes state, but remains in a state of detected for up to an hour following a button press.
I've also noticed that I have no listing for dahua or amcrest under Active Listeners, here: https://<HA-IP>/developer-tools/event.

I bought an AD410 so I can work on getting this in very good shape. I'll have some free time soon and plan on working out all the issues (to the best that they can be)
Also btw, if you use the events, things work a lot better. The sensor is just a nice-to-have.  I have some examples in the readme.

Ah, OK. I've just set up my automation to look for a dahua_event_received event. I'm using Node-RED. Unfortunately, I've introduced a little delay that I wasn't seeing with the sensor state change... I don't know why. I'd expect it to be faster.

Anyway, yes, that works! Thanks.

I'm having issues with this as well.
Getting some errors in the logs, but not sure if it's related or it's something else I've broken.
[custom_components.dahua] Connection to VTO failed will try to connect in 30 seconds, error: [Errno -2] Name does not resolve, Line: 110

I've just released https://github.com/rroller/dahua/releases/tag/0.9.27 which should fix this. The sensor is now keyed off of the PhoneCallDetect event.

Please reopen if you have issues with the latest version. I tested it locally and it seems to work fine.

authors: DeltaNu1142 rroller ruant

repo: rroller/dahua


text:
Version 3.8.1 as framework? (enable bitcode)

New Issue Checklist

[x] I have read and understood the CONTRIBUTING guide
[x] I have read the Documentation
[x] I have searched for a similar issue in the project and found none

Issue Info

Info
Value

Platform Name
e.g. ios

Platform Version
e.g. 8.0-9.x

SDWebImage Version
3.8.1

Integration Method
manually

Xcode Version
Xcode 7.3.1

Issue Description and Steps
Please fill in the detailed description of the issue (full output of any stack trace, compiler error, ...) and the steps to reproduce the issue.
Trying to follow the guide of manually importing the version 3.8.1 of the framework:
Add the SDWebImage project to your project
Download and unzip the last version of the framework from the download page
Right-click on the project navigator and select "Add Files to "Your Project":
In the dialog, select SDWebImage.framework:
Check the "Copy items into destination group's folder (if needed)" checkbox
However, on the the downloadsite (https://github.com/rs/SDWebImage/releases) the latest download of a build framework is 3.6 (SDWebImage-3.6.framework.zip).
Is it possible to get a newer version of the framework to download? We are particularly looking at enabling bitcode for our project, so was hoping the newer version supported this.

+1

+1

Guys, I strongly recommend you don't download that version. To get the 3.8.1, you just need to follow the instructions https://github.com/rs/SDWebImage#installation. I recommend you use CocoaPods or Carthage, makes everything easier.
As for the archived frameworks, we stopped doing them from version 3.6 which is more than 1 year old. Forget about that.

authors: AndreaVitale Nestordu bpoplauschi usk78dk

repo: rs/SDWebImage


text:
Fix the wrong declaration of NSArray generics

New Pull Request Checklist

[x] I have read and understood the CONTRIBUTING guide

[x] I have read the Documentation

[x] I have searched for a similar pull request in the project and found none

[x] I have updated this branch with the latest master to avoid conflicts (via merge from master or rebase)

[x] I have added the required tests to prove the fix/feature I am adding

[x] I have updated the documentation (if necessary)

[x]  I have run the tests and they pass

[x] I have run the lint and it passes (pod lib lint)

This merge request fixes / reffers to the following issues: ...
Pull Request Description
The coders property in SDWebImageCodersManager declaration is wrong. Which should represent an Array of id<SDWebImageCoder>. But now means that NSArray itself conform to SDWebImageCoder. However, Xcode can not show this wrong as a warning...

Codecov Report

Merging #2260 into master will increase coverage by 0.58%.
The diff coverage is 75%.

@@            Coverage Diff             @@
##           master    #2260      +/-   ##
==========================================
+ Coverage   78.01%   78.59%   +0.58%
==========================================
  Files          36       36
  Lines        3752     3752
  Branches      341      343       +2
==========================================
+ Hits         2927     2949      +22
+ Misses        801      780      -21
+ Partials       24       23       -1

Impacted Files
Coverage Δ

SDWebImage/SDWebImageCodersManager.m
69.69% <75%> (ø)
:arrow_up:

SDWebImage/SDWebImageManager.m
83.8% <0%> (+0.47%)
:arrow_up:

SDWebImage/SDWebImageDownloaderOperation.m
92.18% <0%> (+6.84%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update dc5c974...bb5bd74. Read the comment docs.

@bpoplauschi Well...This seems merged into master. Why not add to a 4.3.4 milestone ?
This seems to be a API changes for Swift user. But however, it's a bug and if the user use it correctlly, they must use a if let expression to guard it. So will not break user's code. I advice to add to 4.3.4 milestone.

I didn't see the 4.3.4 milestone. Yeap, that is the right milestone.

authors: bpoplauschi codecov-io dreampiggy


text:
Fix issue causing our spec suite to run much slower.

Before this change:
$ bin/rspec | egrep 'Finished|(examples.*failure)'
Finished in 45.99 seconds (files took 0.89765 seconds to load)
2014 examples, 4 failures, 1 pending

After this change:
$ bin/rspec | egrep 'Finished|(examples.*failure)'
Finished in 11.16 seconds (files took 1.16 seconds to load)
2014 examples, 4 failures, 1 pending

I believe the issue was requiring 'rspec/rails/version'. Since
rspec-rails is not available, rubygems would exhaustively search
all my installed gems before raising LoadError. I have ~300 gems
installed and this was quite slow.
It's better to just force it to raise LoadError and not wait on
RubyGems to do the same thing.

LGTM

authors: JonRowe myronmarston

repo: rspec/rspec-core