KOGITO-10018: SWF Editor - Integrate SWF diagram editor theme API with VsCode and Combined Editor

SWF Diagram Editor theme support.
JIRA: KOGITO-10018
JIRA: KOGITO-10016
JIRA: KOGITO-10015
Screenshots:

@tomasdavidorg could you please help us validate the channels?
The only expected channel to react to a theme change is VS Code.

Hi @tiagobento,
I made the changes you suggested and it works well. Basically I added a subscription for the Theme value right after the editor is created and I removed the kogitoEditor_setTheme.
However,  like in your code sample above, we are unsubscribing for the theme right after consuning it in the initialization, so it won't listen to theme changes if the diagram is already loaded (KogitoEditor_setTheme was my hook for changing the theme in this scenario).
Considering the subscription approach, I removed the "unsubscribe" and it solves the issue. What we need is some sort of  permanent subscription to keep watching theme changes.
The question is:

Is there some sort of issue if we do not unsubscribe for that shared value?

Hi @handreyrc, I tested the changes I have these 4 comments:

After creating of a new SW file, the content is not set and the diagram is always in the light mode

The zoom percentages are always in the light mode

Keyboards shortcuts are always in the light mode

When the SW file is changed to some incorrect form and the mode is switched, the diagram remains in the previous mode. (This is probably caused by the fact that the diagram is not reloaded when there is an error in the editor)

Hey @tomasdavidorg,
I worked on the items you pointed above.
1- Dark theme was added to the Error Page.  The canvas was implemented in a way that if there are errors, the Error page is presented and no further rendering happens until we have a valid diagram. So if the Error Page is presented with dark theme set and then the theme is changed to light, the error page will remain dark and vice-versa. Changing this behavior may have implications because it is liked to wokflow loading as well, so if we really need to change the theme in this scenario we could consider doing it in a separate PR.
2- Dark Theme was added to the zoombar combobox.
3- Grey background was added to the Keyboard shortcuts modal on dark mode.
4- Theme change in workflows with errors. I didn't consider the behavior of not be possible to reload a broken workflow in my previous implementation, good catch.  It was looking alful because the diagram is not reloaded but the background and  state selection color pattern changes. In fact the non reloading behavior is on purpose, so if the worflow is broken it remains visible and functional on the canvas. Following this behavior, no theme at all is applied to the broken workflows, however, when it gets valid again the theme applied.
Please, could take a look again at these items and share your thoughts?
Thanks!!!

@handreyrc Glad to hear it worked! No, you're definitely right, my point with unsubscribing right away was for the case where you would just look at the value once, but for this particular use case, indeed we need a "permanent" subscription that will alter the theme on the Editor every time is changes on the Shared Value. Well done!
One thing I would do, though, is trying to find where would it be a good place to put the unsubscription. Maybe on the "componentDidUnmount" (or the returned lambda of an useEffect without dependencies) of the EditorEnvelopeView component?

Hey @tiagobento,
We tested your idea of implemening the unsubscribe in a returned lambda of an useEffect without dependencies of the EditorEnvelopeView or some other place. Turns out that after further investigation those hooks are never called. In our tests the whole editor iFame is dropped before those lifecycle hooks have a chance to be executed. Looking at this context its not very likely that we are introducing a memory leak by not unsubscribing that shared value. On top of that there are other implications in making that subscription in other places such as random nullpointers when the setTheme is called and the GWT Editor is not completely initialized.
Please, take a look at my latest.
WDYT?
BTW, Thanks a lot @paulovmr for the helping hand.

tomasdavidorg

Hey @tomasdavidorg,
It is fixed!
There was an issue with a flag hasErrors that was not being set to false if the session is reused.
Both, the error page and the new diagram must follow the current theme.
Please, could you check check it again?

tomasdavidorg

Hey @tomasdavidorg,
It is fixed! There was an issue with a flag hasErrors that was not being set to false if the session is reused. Both, the error page and the new diagram must follow the current theme.
Please, could you check check it again?

@handreyrc Works fine. Thanks 🙂

Hey @tiagobento and @caponetto,
I addressed the issue with the dark theme being applied to the keyboad shortcuts modal in all editors.  Now  only the SWF editor will listen to theme changes.
Basically I added the property " supportedThemes: EditorTheme[]"  to the KogitoEditorEnvelopeContextType so its available everywhere. If the editor supports multiple themes just list the themes in the respective factory for that editor otherwise do nothing. It also alows to make theme subscription only if multiple themes are supported.
Please, could you take a look?
Thanks.

Hey @caponetto,
I created a new epic so we can close this one and still keep track of the issues and improvements you reported above.
Epic: KOGITO-10071
Thanks


RESP writer test

Unit test for respWriter to be sure that it conforms to http://redis.io/topics/protocol.

Hi @nikolay-turpitko
I think either bool or nil is ok, if redis returns bool, we can also return it too. :-)
Thank you.

I removed comments from the script.go and commented unit tests for resp writer. So, if you OK with both, please merge them from one PR, I'd rather not spend a time to split it. Thanks.

Hi @nikolay-turpitko
I see this PR supports bool, if yes, we can merge this. ok?

yep

LGTM
Thank you @nikolay-turpitko


[CERT-132 CERT-134] Adding Delete Scenarios

Delete Scenarios Added for CERT-132 / CERT-134
CERT-132
01-EducationOrganization

Scenario 1

Delete

CERT-134
04-StudentEnrollment

Scenario 05

Delete

Scenario 06

Delete

This PR will be covered by
https://github.com/Ed-Fi-Alliance-OSS/certification-testing/pull/13


URL key for specified store already exists.

Hello,
Thanks to provide such a useful extension. I have used it one of the magento sites It works good but at another site I am getting the error 'URL key for specified store already exists.'  when run the url rewrite command. Please let me know possible solution to fix the problem.
Regards
Ashish

Hello.
Looks like you have a 2 (maybe more) products in the same store and/or in same category with same name (and URL key):

Magento get collection of products to re-build URL Rewrites
<loop>
based on product name Magento generate URL key (or use existed)
3.1) if current product have same name as some previous product then Magento generate same URL key based on product name
Magento try to save it in DB
4.1) DB return unique key error (can't save URL key for same store because this URL key already exists)
4.2) if DB return this error then Magento show you "URL key exists" error message
next product
</loop>
Done

So, the solution for you: find products with same name and update the name (one of product) or set custom URL key for one of this product (for example add a "-1" at the end of URL key).


Document graphQL endpoint

We are pointing more and more users towards our GraphQL endpoint. Might be a good idea to document how to use it, and what the restrictions are.

We need to finish this PR with the latest changes: https://github.com/appsignal/appsignal-docs/pull/84
But that requires us to stabilize the GraphQL API first: https://github.com/appsignal/appsignal-server/issues/2272
Let's continue it in https://github.com/appsignal/appsignal-server/issues/2272


Enhancement: azure deployment with active directory as auth provider

Contact Details
No response
What features would you like to see added?
I would like to deploy it to azure and use active directory as the auth provider. As far as I can see that is not supported out of the box. I can help to implement this and would like to start a discussion about how to best integrate this functionality.
More details
this probably will also require a feature toggle for local sign up since active directory would handle the user management.
Which components are impacted by your request?
Other
Pictures
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Active work on this migrated to #495

yes thank you, I saw it.
It seems pretty completed to me. Do you need help testing it?

yes thank you, I saw it. It seems pretty completed to me. Do you need help testing it?

feel free to test it! I'm not actively developing it, and don't have an azure AD


[Backport release-1.11] Cleanup deprecated code that are no longer used

Description
Backport of #512 to release-1.11.

I wanted to backport clean-up PR to the previous versions since we will be releasing >v1 there.
After noticing it is not working out of the box and requiring some work, not sure if it is worth the effort.
Hence, closing for now.


Added Live question popup using Bootstrap

Changes
Added make live button for instructors to show a question to any students using the app at that time.
Context
Testing
Pre-merge checklist

[x] Build succeeds locally and in CI
[x] Proper documentation
[x] Tests
[x] Git history clean

Coverage decreased (-2.2%) to 26.29% when pulling<PHONE_NUMBER>2e663b61bb7de1c7a110ac7f9f28f0 on modal-popup into 1749c22ff9465473f9b5df7a3cd41abdb97a6cca on master.

Coverage decreased (-2.2%) to 26.29% when pulling 55e79d358d961f02082ad645c4e21c83f949ae72 on modal-popup into e8a05e1b73fe6f3aadf2f4d2e13355173d7fc204 on master.


Set DAPR_HTTP_PORT when launching project

Fixes: #575
Tye was missing code to set DAPR_HTTP_PORT when launching a project.
This variable is normally set by dapr when using dapr run ... to
launch a project. However Tye doesn't use dapr run ... so we need to
emulate this behavior.
We already had code to set up DAPR_GRPC_PORT which is used by the
DaprClient class. DAPR_HTTP_PORT is used by the actor runtime in
addition to behing available for arbitrary use (as reported in the
issue).

@jkotalik

LGTM. We should work out how to test this so we catch regression proactively with new versions

Add it to the list of things to create integration tests for?


Fix: Streamline Travis configuration across repositories

This PR

[x] streamlines the Travis CI configuration across repositories

The build currently fails for WITH_LOWEST, because dependencies could not be resolved to an installable set of packages.
I have reproduced the issue locally.
When running
$ composer install
$ composer update --prefer-lowest

dependencies can perfectly be resolved.
However, when running
$ rm -rf vendor
$ composer update --prefer-lowest

dependencies cannot be resolved.
Not sure why, to be honest, and I'm not sure if this is an issue with composer, or whether I'm just using it wrong on CI.
I col


Add Jai-Solania-29.json

Fixes Issue

Changes proposed
I have added my profile Jai-Solania-29.json

Check List (Check all the applicable boxes)

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

Screenshots

Note to reviewers

Thank you @emmalearnscode 😃.


CI/cygwin: use cygwin/cygwin-install-action instead of choco

Use the official GH action for installing cygwin instead of
going through choco.
See #3016

The job is still disabled. I can re-enable it if wanted.

Can we change line 45 if: ${{ false }}  # failing #3016 to see if this change solve the problems with cygwin?

It seems this solves the problem! Thank you very much @lazka!


Specify node version 16 or higher in package.json

What is it?

[ ] Feature / enhancement
[ ] Bug
[ ] Docs / tests
[x] Build

Description
It seems like that qwik is intended to be used in node versions 16 or higher (like here), so should we specify the package.json engines field to be 16 or higher?
Use cases and why
Checklist:

[x] My code follows the developer guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[ ] Added new tests to cover the fix / functionality

Good update, thanks!

Thanks for the review!

@adamdbradley
Thank you again for the review! I'm participating in this year's Hacktoberfest and was wondering if you could add a hacktoberfest-accepted label to this PR if it's not a problem 🙏


is there any method for delete_msg?

hello, is there any method equivalent to telegram-cli delete-msg command?

Yes,there is!
sender.message_delete(msg.id)

👍


Sensor board design for BMI088

New board sensor board design replacing the older VL53L0X IMU with the Bosch BMI088. This will include:

Schematics
Board layouts
Gerber files

Waiting on test results to determine which IMU to move ahead with design. No point seen in designing two boards with if only one will be used.

@jamie-54 I suppose we can close this, right?

yea


Feature add " View Video"

This Feature is to view video uploaded by applicant for job posting, so this feature allows both manager and applicant to view uploaded video

Added feature for adding video and viewing video


problem about draw survival curve

I want to draw different groups in a same picture, But I get this result.  It can seen that the curve C3 is not extend to the end. How can I slove this problem?

Here, my function to draw survival curve
def plot_survival(time,end,group,group_name):
    kmf = KaplanMeierFitter()
    first = True
    unique_group = list(set(group))
    unique_group.sort()
    ax = plt.subplot()
    for t in unique_group:
        ix = (group == t)

        end_ = end[ix]

        kmf.fit(time[ix], event_observed = end[ix], label='{group_name}{t}'.format(group_name = group_name, t = t))
        print(kmf.survival_function_)

        if first:
            ax = kmf.plot()
            first = False
        else:
            ax = kmf.plot(ax=ax)

Hi @WenxiongLiao, it's a consequence of your data and the KM estimator. For the red curve, there is no data past ~70days.
There's unfortunately not a good way to extrapolate this in lifelines, especially if you want CIs, too.
One very hacky solution is to limit the xaxis to 70 days, since all curves seem to be "flat" at that point anyways.


Update README file

Closes #78

@all-contributors please add @sametcelikbicak for infra, code, bug, doc, example, maintenance and test


Cleanup deprecated rspec expectation format

Otherwise it'll never get done, might as well do it as I am playing in the code.
@davidcornu @sgnr as you are now pro in this codebase
From
$ rspec
-- create_table("money_records", {:force=>true})
   -> 0.0032s
....................................................................................................................................................................................

Deprecation Warnings:

Using `should` from rspec-expectations' old `:should` syntax without explicitly enabling the syntax is deprecated. Use the new `:expect` syntax or explicitly enable `:should` with `config.expect_with(:rspec) { |c| c.syntax = :should }` instead. Called from /home/vagrant/src/money/spec/money_spec.rb:219:in `block (3 levels) in <top (required)>'.

If you need more of the backtrace for any of these deprecations to
identify where to make the necessary changes, you can configure
`config.raise_errors_for_deprecations!`, and it will turn the
deprecation warnings into errors, giving you the full backtrace.

1 deprecation warning total

Finished in 0.04948 seconds (files took 1.26 seconds to load)
180 examples, 0 failures

To:
$ rspec
-- create_table("money_records", {:force=>true})
   -> 0.0032s
....................................................................................................................................................................................

Finished in 0.0527 seconds (files took 1.25 seconds to load)
180 examples, 0 failures

Yessss :rainbow: :fireworks: :shipit: :stars:
cc: @gmalette

:rainbow: :ship: :dash:

@gmalette How do you like the new commit?

Super happy!


CF Release

Updates
Added

all components: [patch] Added lockfile to the component
capital-framework: [patch] Added lockfile to the project

Changed

capital-framework: [patch] Imports gulp plugins directly instead of
through gulp-load-plugins.
capital-framework: [patch] Updates some gulp task parts to ES6 syntax.
capital-framework: [patch] Drops IE7 support setting in autoprefixer task.
cf-typography: [patch] Updates category-slug to a-heading in docs.
cf-layout: [patch] Updates category-slug to a-heading in docs.

Removed

capital-framework: [patch] Removes gulp-load-plugins, and unused
gulp-debug, gulp-if, gulp-tap, gulp-template.
capital-framework: [patch] Updates gulp-autoprefixer to 4.0.0.
capital-framework: [patch] Updates gulp-uglify to 3.0.0.

Review

@cfpb/front-end-team-admin

I am a bot
After this PR is merged, I will instruct Travis to automagically perform the following steps:

Increment Capital Framework's version per our guidelines.
Add a timestamped entry to the changelog with the new version and its changes.
Tag the release and push it to GitHub.
Publish both capital-framework and any individually updated components to npm.
Update both canary, our development branch, and master, our release branch.

If I do something wrong, blame a human.

DON'T MERGE. We're having some internal discussions about how lockfiles are going to play out.


Make sure user manually, or library automatically, runs nltk.download('punkt').

Situation

It is necessary to have downloaded nltk's punkt in order for nltk.tokenize to work at this entry point.
If the user has not downloaded nltk's punkt, the program will just catch the exception without informing that the nltk punkt dependency is missing.

Objective
Either:

Include instruction to user/collaborator in readme to run the following before using wordview:
import nltk
nltk.download('punkt')

Configure poetry to automatically download nltk punkt, if in fact poetry can handle such type of downloads.

This is already done in the pyproject.toml l:31
where this script for downloading NLTK requirements is called by running poetry install.

This issue is resolved for the contributors by adding the script and including instructions in the CONTRIBuTING guidelines. However, the issue still persists for the user of the package because poetry currently does now provide a solution for running the download script at installation time.


[Issue 69] Updating SSH Url

The Deploy workflow failed in the last release in the scan SSH keys step. I believe this is due to a bad URL in for the git_remote_url field in the Deploy workflow. This PR updates the URL to one that was successful in some of the test deploys I did. PR changes include

Adding Dokku username to the git_remote_url field
Upper casing the Deploy workflow name

Closes #69

:tada: This PR is included in version 1.1.13 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Error during export of the project with Softbody, also errors in exported project.

Godot version
v4.1.1.stable.official [bd6af8e0e]
System information
Godot v4.1.1.stable - Ubuntu 22.04.3 LTS 22.04 - Vulkan (Forward+) - dedicated AMD Radeon RX 6600 (RADV NAVI23) () - AMD Ryzen 7 5700G with Radeon Graphics (16 Threads)
Issue description
Softbody attached to Rigidbody.
Errors during export. "scene/3d/node_3d.cpp:324 - Condition "!is_inside_tree()" is true. Returning: Transform3D())"
Softbody works correct in editor (follows Rigidbody), does not work correctly in Linux and Web exports (haven't tested other export profiles).
Steps to reproduce

Project with one Rigidbody3D box and SoftBody attached to it by 4 points. No scripts.
Project attached.

In editor it works ok (i.e. SoftBody follows falling RigidBody like a parachute)

During export I get
scene/3d/node_3d.cpp:324 - Condition "!is_inside_tree()" is true. Returning: Transform3D()
scene/3d/node_3d.cpp:324 - Condition "!is_inside_tree()" is true. Returning: Transform3D()
scene/3d/node_3d.cpp:324 - Condition "!is_inside_tree()" is true. Returning: Transform3D()
scene/3d/node_3d.cpp:324 - Condition "!is_inside_tree()" is true. Returning: Transform3D()
scene/3d/node_3d.cpp:324 - Condition "!is_inside_tree()" is true. Returning: Transform3D()
scene/3d/node_3d.cpp:324 - Condition "!is_inside_tree()" is true. Returning: Transform3D()
scene/3d/node_3d.cpp:324 - Condition "!is_inside_tree()" is true. Returning: Transform3D()
scene/3d/node_3d.cpp:324 - Condition "!is_inside_tree()" is true. Returning: Transform3D()

On execution of exported project (both Linux and WASM): Softbody deforms correctly by gravity, but stays in one place (does not follow Rigidbody box). In console there are messages:

ERROR: Node3D node not defined in the pinned point, this is undefined behavior for SoftBody3D!
at: _update_cache_pin_points_datas (scene/3d/soft_body_3d.cpp:719)
ERROR: Node3D node not defined in the pinned point, this is undefined behavior for SoftBody3D!
at: _update_cache_pin_points_datas (scene/3d/soft_body_3d.cpp:719)
ERROR: Node3D node not defined in the pinned point, this is undefined behavior for SoftBody3D!
at: _update_cache_pin_points_datas (scene/3d/soft_body_3d.cpp:719)
ERROR: Node3D node not defined in the pinned point, this is undefined behavior for SoftBody3D!
Minimal reproduction project
test.zip

Retested in 4.1.2 stable official, with the same results.

Can confirm, still seeing this in 4.1.3 stable.

I went ahead and set the attachments manually in the _ready() function and that seemed to fix it in the exported project.
Just pulled the lines from the .tscn file and wrapped in set()
That seems like a decent workaround for now.
extends SoftBody3D

func _ready():
	set("attachments/0/point_index", 29)
	set("attachments/0/spatial_attachment_path", NodePath("../Armature/Skeleton3D"))
	set("attachments/0/offset", Vector3(-0.2, 0.614552, 0.310236))
	set("attachments/1/point_index", 28)
	set("attachments/1/spatial_attachment_path", NodePath("../Armature/Skeleton3D"))
	set("attachments/1/offset", Vector3(-0.1, 0.614552, 0.310236))
	set("attachments/2/point_index", 27)
	set("attachments/2/spatial_attachment_path", NodePath("../Armature/Skeleton3D"))
	set("attachments/2/offset", Vector3(0, 0.614552, 0.310236))
	set("attachments/3/point_index", 26)
	set("attachments/3/spatial_attachment_path", NodePath("../Armature/Skeleton3D"))
	set("attachments/3/offset", Vector3(0.1, 0.614552, 0.310236))
	set("attachments/4/point_index", 25)
	set("attachments/4/spatial_attachment_path", NodePath("../Armature/Skeleton3D"))
	set("attachments/4/offset", Vector3(0.2, 0.614552, 0.310236))

Same issue in Godot 4.2.2, workaround from @pkmollman works

Same issue when exporting for Android. (4.2.2 stable). SoftBody attachment doesn't work, until set manually on _ready
Same workaround.

I just had this reported to me in godot-jolt/godot-jolt#930 and it seems that this is a regression caused by godotengine/godot#71824.
In short, when scenes are exported they will first be instantiated (here) in order to read its state. However, that instantiated scene is also immediately freed right after (here) which means that deferred calls (like the one introduced in #71824) never have a chance to be flushed. Once they do get flushed (after the export is done) they'll act on orphaned nodes instead, causing a bunch of weird errors about !is_inside_tree().
So pinning in general works thanks to SoftBody3D::_set_property_pinned_points_indices not being deferred, but SoftBody3D::_set_property_pinned_points_attachment with "spatial_attachment_path" is broken because it is deferred.
I'm not entirely sure if the correct thing is to flush the message queue as part of exporting, or if the thing that call_deferred in SoftBody3D was meant to fix should be fixed properly instead.
CC @rburing @PrecisionRender

@mihe I think https://github.com/godotengine/godot/pull/86310 should also fix this.
Ideally the deferred call introduced by https://github.com/godotengine/godot/pull/71824 would be removed, but I don't know how to solve the in-editor reparenting issue cleanly without it, given the order of operations performed by the editor when reparenting.

I think #86310 should also fix this.

@rburing Ah, yeah, it might actually. I failed to realize that the instantiated scene is in fact never added to any tree, so I guess that would be covered by that check. I'll give it a try tomorrow.

@rburing I can confirm that #86310 fixes the issue, resulting the attachments working in the exported builds, and no errors being emitted during export.


awsebcli: init at 3.10.5

Motivation for this change
I wanted to use awsebcli at work and it wasn't in nixpkgs yet.
Things done

[ ] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[x] macOS
[ ] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Also:

moved colorama_3_7 from the awscli derivation into python-packages since both awscli and awsebcli depend on it.
refactored some of the parent derivations that I needed to override in order to use fetchPypi, which AFAICT is preferred for python packages (https://github.com/NixOS/nixpkgs/pull/25202#discussion_r113117919, https://github.com/NixOS/nixpkgs/pull/26078).
I tried to find what is the current best practice regarding versioning derivation names but it appears that although there is a section in the manual about it there is a lot of bikeshedding still (https://github.com/NixOS/nixpkgs/issues/17625), so I just went with what I think is sensible based on the names of other derivations in pythonPackages (package_V_V).

Rebased!

@FRidh thank you for the review, I've tried to address those points and updated the PR.
Overriding the package set is a lot nicer!
I also rebased onto master again.
I plan to add myself as a maintainer for the new packages and update to 3.10.6 in separate commits, is that the convention here?

Actually, the convention is one commit per expression you touch.

I've split it out into more atomic commits, is this preferable? 😊

@FRidh was there something remaining to be done here?

Rebased!

Bump.  @FRidh is there something remaining to be done here?

@FRidh @edolstra ping

I've pushed modified versions of these commits, e.g. b1c4498b415f3b9cfec8f619c749eccbb5314e66

My apologies for the long delay.

@FRidh that's OK, thank you for your time!


Gold Members BUG

When gold members type in the chat since the new update, it doesnt appear gold, it shows white on the chat, its a bug?

Not a bug, a feature

ahhhh okayyy! so it will be like this so on?


Fix MySQL default auth for PHP < 7.4

The alternative is to edit the user after the container is created but that’s less than ideal. This should “just work” out of the box when the user is using an older PHP version.
I opted to not do detection because it's possible that the PHP version connecting to MySQL is different than the one used to start the container (e.g. if you're using takeout on the host machine + an older homestead box)
fixes #53

Merging, going to test on a few versions to attempt to see if it has any issues. Thanks @fideloper and @thecrypticace!


Detect grid status

Is there a way to detect when the system goes off grid or when the power from the grid stops?
It would be handy to be able to run an automation if the power from the grid goes out.

We can detect enpower states: no grid, open, and closed. If this is this what you need then it can be added as a sensor.

@eleventhaus
in this case I need for you 2 debug logs, one if your device is ON Grid andond one if is OFF Grid, to enable debug please go to plugin settings>>advanced settings>>system>>debug enable it. Restart and get the whole log.

I have pushed 7.5.0-beta

added Enpower Grid State contact sensor for monitoring,
added Encharge Grid State contact sensor for monitoring,
added Solar Grid State contact sensor for monitoring

all configured in plugin settings Advanced Settings>>Ensemble section
please test and let me know

Looking good! Thank you

Please provide the debug log too.

continue please in #106

We can detect enpower states: no grid, open, and closed

Will the enpower state show "off grid" (meaning power grid from the city is down)? or will it only show open/closed?

@eleventhaus i don’t know because I don’t have Ensemble/Enpower, if You send me the debug log during this mode then I can check it.

@eleventhaus read this: https://support.enphase.com/s/article/when-will-my-enphase-energy-system-go-off-grid then put your system in Grid-Off and send me the debug log.

@eleventhaus  added in 7.11.0


Add Kuro Siwo

Insert URLs to the project here: https://github.com/Orion-AI-Lab/KuroSiwo

[x] The projects is active, documented, open source licensed, shows usage from external parties and is directly targeting environmental sustainability. Find more details in the Contribution Guide.

All issues labeled as Good First Issue of the project listed on OpenSustain.tech will be visible on ClimateTriage.com. This is a great way to welcome new community members to your project.
All projects listed will be posted on our Mastodon channel

@ngbountos @paren8esis


Worker nodes unable to start up due to missing files

Rancher Server Setup

Rancher version: 2.6.0
Installation option (Docker install/Helm Chart): Single-node Docker

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc):

Proxy/Cert Details: Self-signed

Information about the Cluster

Kubernetes version:
Cluster Type (Local/Downstream): Local

User Information

What is the role of the user logged in? Admin

Describe the bug
Working rancher instance with a single cluster consisting of 3x worker & 3x etc/control plane nodes.
Node VMs had to be migrated.
etc/controlplane nodes migrated without issue (had to do clean install due to not having persistent /etc/kubernetes)
While migrating worker node (Same clean install: Delete from Rancher, redeploy VM, execute register node command) kubelet restarts constantly with exception
Flow 1: (mounted persistent /etc/kubernetes)
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /opt/local/etc/kubernetes:/etc/kubernetes -v /var/run:/var/run  rancher/rancher-agent:v2.6.0 --server https://<RANCHER-SERVER.DOMAIN> --token <TOKEN> --ca-checksum <CA_CHECKSUM> --worker

$ docker logs kubelet
....
F0301 12:18:26.288859   19994 server.go:257] unable to load client CA file /etc/kubernetes/ssl/kube-ca.pem: open /etc/kubernetes/ssl/kube-ca.pem: no such file or directory
goroutine 1 [running]:
k8s.io/kubernetes/vendor/k8s.io/klog/v2.stacks(0xc00012c001, 0xc0001a81c0, 0xac, 0x1b2)
....

$ docker logs share-mnt
...
time="2022-03-01T12:19:55Z" level=fatal msg="Certificate chain is not complete, please check if all needed intermediate certificates are included in the server certificate (in the correct order) and if the cacerts setting in Rancher either contains the correct CA certificate (in the case of using self signed certificates) or is empty (in the case of using a certificate signed by a recognized CA). Certificate information is displayed above. error: Get "https://<RANCHER-SERVER.DOMAIN>": x509: certificate signed by unknown authority"

$ ls -la /opt/local/etc/kubernetes/
total 12
drwxr-xr-x 3 root root 4096 Mar  1 12:04 .
drwxr-xr-x 3 root root 4096 Mar  1 12:04 ..
-rw------- 1 root root    0 Mar  1 12:04 cloud-config
drwxr-xr-x 3 root root 4096 Mar  1 12:04 ssl

$ ls -la /opt/local/etc/kubernetes/ssl/
total 12
drwx------ 2 root root 4096 Mar  1 12:04 .
drwxr-xr-x 3 root root 4096 Mar  1 12:04 ..
drwx------ 2 root root 4096 Mar  1 12:04 certs

$ ls -la /etc/kubernetes/
total 16
drwxr-xr-x   2 root root  4096 Mar  1 12:05 .
drwxr-xr-x. 99 root root 12288 Mar  1 12:05 ..

Flow 2: (Without persistent /etc/kubernetes)
sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run  rancher/rancher-agent:v2.6.0 --server https://<RANCHER-SERVER.DOMAIN> --token <TOKEN> --ca-checksum <CA_CHECKSUM> --worker

$ docker logs kubelet
....
k8s.io/kubernetes/vendor/k8s.io/klog/v2.stacks(0xc00012c001, 0xc0001a81c0, 0xac, 0x1b2)
F0301 12:31:48.678865   11535 server.go:257] unable to load client CA file /etc/kubernetes/ssl/kube-ca.pem: open /etc/kubernetes/ssl/kube-ca.pem: no such file or directory
goroutine 1 [running]:
....

(share-mnt does not exist)

$ ls -la /etc/kubernetes/
total 20
drwxr-xr-x   3 root root  4096 Mar  1 12:30 .
drwxr-xr-x. 99 root root 12288 Mar  1 12:30 ..
-rw-------   1 root root     0 Mar  1 12:30 cloud-config
drwxr-xr-x   3 root root  4096 Mar  1 12:30 ssl

$ ls -la /etc/kubernetes/ssl/
total 12
drwxr-xr-x 3 root root 4096 Mar  1 12:30 .
drwxr-xr-x 3 root root 4096 Mar  1 12:30 ..
drwx------ 2 root root 4096 Mar  1 12:30 certs

Expected result
Not have any missing files files.
Worker and etc/controlplane VM setups are identical and there are no missing files in etc/controlplane VMs (Though, it also keeps it's file in /etc/kubernetes rather than in my defined mount /opt/local/etc/kubernetes)

$ ls -la /etc/kubernetes/ssl/
total 124
drwxr-xr-x 3 root root 4096 Mar  1 08:10 .
drwxr-xr-x 3 root root 4096 Mar  1 10:27 ..
drwx------ 2 root root 4096 Mar  1 08:10 certs
-rw------- 1 root root 1675 Mar  1 08:30 kube-apiserver-key.pem
-rw------- 1 root root 1675 Mar  1 08:30 kube-apiserver-proxy-client-key.pem
-rw------- 1 root root 1107 Mar  1 08:30 kube-apiserver-proxy-client.pem
-rw------- 1 root root 1679 Mar  1 08:30 kube-apiserver-requestheader-ca-key.pem
-rw------- 1 root root 1082 Mar  1 08:30 kube-apiserver-requestheader-ca.pem
-rw------- 1 root root 1310 Mar  1 08:30 kube-apiserver.pem
-rw------- 1 root root 1675 Mar  1 08:30 kube-ca-key.pem
-rw------- 1 root root 1017 Mar  1 08:30 kube-ca.pem
...
...

This issue fixes itself, after I copy the missing files from currently still working node (Not yet restarted) to the new broken node, but this is not a sustainable solution

Managed to get the files to our local mount (/opt/local/etc/kubernetes), but kubelet and others do not read from there.
Have to manually copy the files to /etc/kubernetes


Fix typo in config-map.yaml  - vists instead of visits

diff --git a/k8s/init-services/02-config-map.yaml b/k8s/init-services/02-config-map.yaml
index 32de900..6a8de77 100644
--- a/k8s/init-services/02-config-map.yaml
+++ b/k8s/init-services/02-config-map.yaml
@@ -53,7 +53,7 @@ data:
             enabled: true

     customers-service-id: http://customers-service.spring-petclinic.svc.cluster.local:8080
-    visits-service-id: http://vists-service.spring-petclinic.svc.cluster.local:8080
+    visits-service-id: http://visits-service.spring-petclinic.svc.cluster.local:8080

     spring:
       datasource:

I see the typo in the current 02-config-map.yaml file. @odedia do you know why it's working with it?

I expected that https://github.com/spring-petclinic/spring-petclinic-cloud/blob/master/k8s/init-services/08-visits-service-service.yaml would have the typo as well for it to work but it doesn't seem to be the case. I think we should merge it.

Hi @saxenakshitiz, coud you please submit a PR?


Streaming documentation

Twitter appears to have taken down the documentation for the Stream API down: https://dev.twitter.com/streaming/overview (linked from http://tweepy.readthedocs.io/en/v3.5.0/streaming_how_to.html) Looking at Twitter's API docs I can't seem to find any sort of documentation on a push API. Given this, what is the future status of the Tweepy streaming component?

https://developer.twitter.com/en/docs/tweets/filter-realtime/overview
Isn't this the streaming API?

You're right - my bad. Thanks for the clarification


Issue with SandWicher.sol

When i use this contract to buy any token my transaction is being sandwiched by some other bot and i loss good amount..
Please check these transaction at this address
https://bscscan.com/address/0xfab57ceb826c4df8a2087b0494c00999dbfcdf79

I will look into this tomorrow, in the meantime I would advise not to use the contract as is, it is not optimised enough, and  you are lucky you didn't get into a rug

Hi thanks for responding and updating on issues this contract has.
Eagerly waiting for your advice

Any update?

Hi you seems to be busy so if you want we can work on this on paid basis

Hi I did that it resolved the issue of being sandwiched but now the transactions are failing


sequential_connectivity_test gives os error - Too many open files

What version of gRPC and what language are you using?
grpc 1.12 c++
What operating system (Linux, Windows, …) and version?
Macos 10.13
What runtime / compiler are you using (e.g. python version or version of gcc)
Apple LLVM version 9.1.0 (clang-9<IP_ADDRESS>)
What did you do?
make
make test
What did you expect to see?
Successful tests
What did you see instead?
Unsuccessful tests
This is what is shown in the console. If there are more logs I can upload those.
E0621 15:50:23.159045000<PHONE_NUMBER>36928 channel.cc:98]                channel stack builder failed: {"created":"@1529589023.159031000","description":"resolver creation failed","file":"src/core/ext/filters/client_channel/client_channel.cc","file_line":695}
[RUN]     Testing secure_endpoint_test
D0621 15:50:23.169159000<PHONE_NUMBER>36928 test_config.cc:391]           test slowdown factor: sanitizer=1, fixture=1, poller=1, total=1
[RUN]     Testing sequential_connectivity_test
D0621 15:50:23.892377000<PHONE_NUMBER>36928 test_config.cc:391]           test slowdown factor: sanitizer=1, fixture=1, poller=1, total=1
I0621 15:50:23.893037000<PHONE_NUMBER>36928 sequential_connectivity_test.cc:55] TEST: insecure
E0621 15:50:29.258526000<PHONE_NUMBER>79200 wakeup_fd_pipe.cc:40]         pipe creation failed (24): Too many open files
E0621 15:50:29.258603000<PHONE_NUMBER>79200 ev_poll_posix.cc:900]         pollset_work: {"created":"@1529589029.258577000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:29.258620000<PHONE_NUMBER>79200 backup_poller.cc:124]         Run client channel backup poller: {"created":"@1529589029.258577000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:34.259215000<PHONE_NUMBER>06048 wakeup_fd_pipe.cc:40]         pipe creation failed (24): Too many open files
E0621 15:50:34.259298000<PHONE_NUMBER>06048 ev_poll_posix.cc:900]         pollset_work: {"created":"@1529589034.259270000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:34.259317000<PHONE_NUMBER>06048 backup_poller.cc:124]         Run client channel backup poller: {"created":"@1529589034.259270000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:39.258853000<PHONE_NUMBER>79200 wakeup_fd_pipe.cc:40]         pipe creation failed (24): Too many open files
E0621 15:50:39.258947000<PHONE_NUMBER>79200 ev_poll_posix.cc:900]         pollset_work: {"created":"@1529589039.258909000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:39.258977000<PHONE_NUMBER>79200 backup_poller.cc:124]         Run client channel backup poller: {"created":"@1529589039.258909000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:44.260830000<PHONE_NUMBER>06048 wakeup_fd_pipe.cc:40]         pipe creation failed (24): Too many open files
E0621 15:50:44.260900000<PHONE_NUMBER>06048 ev_poll_posix.cc:900]         pollset_work: {"created":"@1529589044.260872000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:44.260924000<PHONE_NUMBER>06048 backup_poller.cc:124]         Run client channel backup poller: {"created":"@1529589044.260872000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:49.261191000<PHONE_NUMBER>79200 wakeup_fd_pipe.cc:40]         pipe creation failed (24): Too many open files
E0621 15:50:49.261268000<PHONE_NUMBER>79200 ev_poll_posix.cc:900]         pollset_work: {"created":"@1529589049.261244000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:49.261285000<PHONE_NUMBER>79200 backup_poller.cc:124]         Run client channel backup poller: {"created":"@1529589049.261244000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:54.262129000<PHONE_NUMBER>06048 wakeup_fd_pipe.cc:40]         pipe creation failed (24): Too many open files
E0621 15:50:54.262200000<PHONE_NUMBER>06048 ev_poll_posix.cc:900]         pollset_work: {"created":"@1529589054.262173000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:54.262217000<PHONE_NUMBER>06048 backup_poller.cc:124]         Run client channel backup poller: {"created":"@1529589054.262173000","description":"OS Error","errno":24,"file":"src/core/lib/iomgr/wakeup_fd_pipe.cc","file_line":41,"os_error":"Too many open files","syscall":"pipe"}
E0621 15:50:54.551892000<PHONE_NUMBER>36928 sequential_connectivity_test.cc:91] assertion failed: ev.success == true

Caught signal SIGABRT
no backtrace
/bin/sh: line 1:  7566 Abort trap: 6           /Users/user/Documents/GRPC/grpc/bins/opt/sequential_connectivity_test
test sequential_connectivity_test failed
make: *** [test_c] Error 1

@sab24 can you do ulimit -a .
Maybe the limits are set to low by default. Can you please retry by increasing the max number of open descriptors allowed? (here is an example of how to do it on mac: https://superuser.com/questions/302754/increase-the-maximum-number-of-open-file-descriptors-in-snow-leopard)

Yes, increasing the limit of open files solves that issue :)


How  exclude some keyword for KeywordDetector plugin

Hello !
Please your help. I am using detect-secrets version "1.1.0" and I would like to know how I can exclude some Keyword. I see in the output of the command this:
    {
      "name": "KeywordDetector",
      "keyword_exclude": ""
    }

So,  I imagine there is a way to add values.
Here the examples of false positives that I got
 db-password: anything
service_account_secret_name: anything
Thanks in advance

Hello @vrokida, thank you for raising the question.
I believe you can add a regex in your baseline file to exclude those two keywords. Refer to the following snippet if you'd like to see how it would work
https://github.com/Yelp/detect-secrets/blob/70e6cf69f2d544a49729039a374d86d7b3e472d9/tests/plugins/keyword_test.py#L181-L194

That is correct. For example to filter keyword db_password which is being flagged. You can update your .secrets.baseline to:
    {
      "name": "KeywordDetector",
      "keyword_exclude": "db_password"
    },

and that secret will be excluded. This keyword_exclude property can hold a regex to exclude any keywords that match that specific regex.

Thanks for your question. I will consider this resolved. If you have any other questions or you do not consider this resolved - please re-open an issue and the team will be happy to assist. Thanks!


Cannot send images

Hello, i cannot send images as used in example. Worked before. Now image is sent, but it cannot be opened within WhatsApp in phone. It stucks app when i click on the photo, there is also no thumbnail.
Could you update examples for images/file sending?
Thanks a lot for your great work!
EDIT: Tried exactly your code from examples and it works, probably fault in my code, sorry for opening invalid ticket, please close it.

It's working here. Can u show ur source exactly?

Did you get it?

I'm sorry, I didn't see that change. Ok.


$RUNE missing after BNB to THOR (native) token upgrade

Hello!
I made an upgrade BNB to THOR (native) token. After the upgrade I can see the upgrade in my ASGARDEX history tab and I can find the tx in explorer, but my asset balance is zero. Whats go wrong?
My upgrade tx is --
Your Environment

ASGARDEX desktop version:
0.5.0 (DMG)

Operating system and version:
macos 11.6.1

Transaction hash(es):
--

Wallet address(es):
--

Time cures, takes a few hours


xtrx_open_string: properly terminate 4096-byte paramstrings

strncpy() does not terminate the copied string if there is insufficient room. Since you were using strncpy() with the full size of the target buffer, this could lead to an unterminated string, and undefined behavior later (most likely, the strstr() would see problems).

Don't use bare %x for uint64_t. Cast to uintmax_t and use %jx.

Re: Don't use bare %x for uint64_t. Cast to uintmax_t and use %jx.
Casting to uintmax_t isn't a better solution since it's 32 bits on 32-bit platforms. PRIu64 macro is the only valid portable way.
long long unsigned int and "%llx" will work as well on all supported platform but it's ugly as well

Re: Don't use bare %x for uint64_t. Cast to uintmax_t and use %jx.
Casting to uintmax_t isn't a better solution since it's 32 bits on 32-bit platforms. PRIu64 macro is the only valid portable way.
long long unsigned int and "%llx" will work as well on all supported platform but it's ugly as well

I disagree. uintmax_t is defined to be "the largest supported integer type". Furthermore, the maximum value of uintmax_t is UINTMAX_MAX, which is guaranteed to be 2^64-1 or more by the standard.
http://www.cplusplus.com/reference/cstdint/

Why can't we just use PRIu64 which is the most straightforward way?

Why can't we just use PRIu64 which is the most straightforward way?

We can certainly do that. Would you like me to make the change and rebase?

Thanks. That would be appreciated.

The merge brought in a different solution anyway, so it's down to just the string fix.


feature - use tab to change edit row

Features for #876, try /examples/cell-edit 👍

@madeinfree, That's pretty awesome, maybe I can base this PR to support this table with a excel-like moving with table also. Thanks your contributions 👍

Good works 👍

Released, https://github.com/AllenFang/react-bootstrap-table/releases/tag/v3.0.0-beta.11
Thanks your contributions

If already supported I think it will be nice to also have the shift+tab to go back to the previous tab. Since the general functionality is already there I think it would be very easy to implement.

@dekelb Yes, thanks for your remind, I can help this if need it.

It's not something that I need, but I really think it will make this feature complete.

I'll consider to add this in the future. Thank


Rename com.github.camellabs.iot.vertx.camel.GroovyCamelVerticle to io.rhiot.vertx.camel.GroovyCamelVerticle

Done.


brew cleanup results in Error: Permission denied @ utime_internal

[x] are reporting a bug others will be able to reproduce and not asking a question. If you're not sure or want to ask a question do so on our Discourse: https://discourse.brew.sh
[x] ran a brew command and reproduced the problem with multiple formulae? If it's a problem with a single, official formula (not cask) please file this issue at Homebrew/homebrew-core: https://github.com/Homebrew/homebrew-core/issues/new/choose. If it's a brew cask problem please file this issue at https://github.com/Homebrew/homebrew-cask/issues/new/choose. If it's a tap (e.g. Homebrew/homebrew-php) problem please file this issue at the tap.
[x] ran brew update and can still reproduce the problem?
[x] ran brew doctor, fixed all issues and can still reproduce the problem?
[x] ran brew config and brew doctor and included their output with your issue?

What you were trying to do (and why)
tried to run brew cleanup
What happened (include command output)

Command output

07:36:45:/Users/balupton:master

brew cleanup -v
Error: Permission denied @ utime_internal - /Users/balupton/Library/Caches/Homebrew/.cleaned
07:37:14:/Users/balupton:master
brew doctor
Your system is ready to brew.
07:38:24:/Users/balupton:master
brew update
Already up-to-date.
07:38:30:/Users/balupton:master
brew doctor
Your system is ready to brew.
07:38:35:/Users/balupton:master
brew config
HOMEBREW_VERSION: 2.1.8
ORIGIN: https://github.com/Homebrew/brew
HEAD: 549a40bedb32171912a449d8d0e7bcae02d5b432
Last commit: 6 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 3a949103ed29c96759195e81ba4efdd02931d226
Core tap last commit: 5 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_NO_COLOR: \e[0m
CPU: octa-core 64-bit kabylake
Homebrew Ruby: 2.3.7 => /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
Clang: 10.0 build 1001
Git: 2.22.0 => /usr/local/bin/git
Curl: 7.54.0 => /usr/bin/curl
macOS: 10.14.6-x86_64
CLT: <IP_ADDRESS>.1.1562985497
Xcode: 10.3
CLT headers: <IP_ADDRESS>.1.1562985497
07:38:38:/Users/balupton:master
brew cleanup -v
Error: Permission denied @ utime_internal - /Users/balupton/Library/Caches/Homebrew/.cleaned

What you expected to happen
it to work correctly
Step-by-step reproduction instructions (by running brew commands)
07:36:45:/Users/balupton:master
> brew cleanup -v
Error: Permission denied @ utime_internal - /Users/balupton/Library/Caches/Homebrew/.cleaned
07:37:14:/Users/balupton:master
> brew doctor
Your system is ready to brew.
07:38:24:/Users/balupton:master
> brew update
Already up-to-date.
07:38:30:/Users/balupton:master
> brew doctor
Your system is ready to brew.
07:38:35:/Users/balupton:master
> brew config
HOMEBREW_VERSION: 2.1.8
ORIGIN: https://github.com/Homebrew/brew
HEAD: 549a40bedb32171912a449d8d0e7bcae02d5b432
Last commit: 6 days ago
Core tap ORIGIN: https://github.com/Homebrew/homebrew-core
Core tap HEAD: 3a949103ed29c96759195e81ba4efdd02931d226
Core tap last commit: 5 hours ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_NO_COLOR: \e[0m
CPU: octa-core 64-bit kabylake
Homebrew Ruby: 2.3.7 => /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
Clang: 10.0 build 1001
Git: 2.22.0 => /usr/local/bin/git
Curl: 7.54.0 => /usr/bin/curl
macOS: 10.14.6-x86_64
CLT: <IP_ADDRESS>.1.1562985497
Xcode: 10.3
CLT headers: <IP_ADDRESS>.1.1562985497
07:38:38:/Users/balupton:master
> brew cleanup -v
Error: Permission denied @ utime_internal - /Users/balupton/Library/Caches/Homebrew/.cleaned

ok doing rm  /Users/balupton/Library/Caches/Homebrew/.cleaned resolved it

The above applies to new installations, but existing installs can be fixed with: sudo chown $(whoami) $(brew --cache)/.cleaned

The above applies to new installations, but existing installs can be fixed with: sudo chown $(whoami) $(brew --cache)/.cleaned

what should I do?

@sm44 not sure what the fish shell is, I'd say type bash -il then enter the aforementioned bash command(s)

I've updated my comment above.


Is there a callback for "no result" ?

Or a way to catch it within a function called by input-changed attribute ?
Thanks.

Nope.

I did a PR if you want for this.

I'll keep the PR open but closing this issue.


⚠ Bofrost.lu has degraded performance

In d7935b8, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1963 ms

Resolved: Bofrost.lu performance has improved in 56b0fc1 after 6 minutes.


Insert link/image buttons don't have tooltips

Not a regression, but putting in December due to accessibility concerns.


mod-admin-full: Allow odhcpd to be configured via LuCI

This is what I have been running for a while now on one of my LEDE routers. I use odhcp and unbound to replace dnsmasq. I built custom images without dnsmasq for this.

The test for has_dnsmasq was not sufficient and failed when odhcp was present but dnsmasq not.
Some comments did not really represent what the code was doing (DNS, DHCP, etc.)
I left the dnsmasq section mostly untouched, although I feel the urge to rename/rearrange a couple of things as they are not where they belong from a technical point of view.
For odhcpd, I have arranged configuration items in a less confusing manner. IPv6 is not advanced, it is the new normal. We may reflect these changes in the networking world by naming things appropriately. However, I hesitate(d) from changing things for dnsmasq, as I like the user experience to be consistent from one release to the next whenever possible. But we should do new things right.
We have sections for "General", "IPv4" and "IPv6" now. Protocol versions are clearly separated and users are able to understand what protocol is affected by which section. There are users that do not want to run one of the IP protocols, which is a legitimate use case, I think.
With dnsmasq the M and O-Flag did depend on using dnsmasq for dhcpv6. I think this is a bug. As I said I left this untouched. For odhcpd I removed that dependency. I do not want to forbid users to run a dhcpv6 server from another machine. The LEDE router may be the one sending out RAs but may not be the dhcpv6 server in that network, and this is fine and a legitimate use case.

I would like to join these changes and the ones @cshoredaniel made in https://github.com/openwrt/luci/pull/964 as I think that they are even better together. Also, I would love to hear @EricLuehrsen's opinion, he has recently worked with odhcpd and maybe aware of caveats or mistakes in my code I have overlooked. There is also a multiple-instances of dnsmasq pull request from @cshoredaniel, which may or may not be affected by changes in this PR.
Let's discuss, guys! What is the best way to get odhcp and dnsmasq to coexist?
Signed-off-by: Dan Luedtke<EMAIL_ADDRESS>PS: If you have not tried yet, build without dnsmasq and with unbound and odhcpd. It's wonderful to have a local resolving, validating nameserver on your router and the features of odhcpd.

odhcpd is reasonably simple in that it doesn't have a lot of options which can be good or bad  depending on your goals. Its hard to do wrong here.
One caveat is that odhcpd and dnsmasq-UCI do not share option space. odhcpd uses option dns and option domain for each dhcp instance by design. These could be interpreted also by dnsmasq-UCI scripts for common interface. dnsmasq itself needs a different syntax and handles far more comprehensive options. dnsmasq handles auto-assignment like [fd00::] to mean the ULA of this interface. dnsmasq only assigns a domain per instance,and so, requires multiple dnsmasq instances (which then don't share cache memory or cpu processing of DNSSEC). When building LuCI you need to recognize these and display or hide them appropriately.
off topic: Long term somebody should get odhcpd and dnsmasq-UCI to share option statements and deprecate the older way in either or both. The scripts would be easy to write. C-code option space parsing uses uci libraries, so no issue there in odhcpd. Organizing the community to accept the changes is not easy.

As a matter of consistency, I would like the DNS/DHCP global settings that are not intrinsic to a networks configuration settings be moved to 'services' menu. Something like 'General DNS-DHCP'. The network tab is cluttered.

As a matter of consistency, I would like the DNS/DHCP global settings that are not intrinsic to a networks configuration settings be moved to 'services' menu. Something like 'General DNS-DHCP'. The network tab is cluttered.

I would go even further: Split DNS and DHCP. They have nothing in common except that we use dnsmasq (not a big fan, just someone didn't notice) and therefore it made sense to configure these on the same page. It does make sense on low-end devices, but everything as "powerful" as a raspberryPI can run unbound or other DNS software alongside almost any other common dhcp server. Often, thanks to recent works, even with dhcp-clients showing up in the DNS.

I would prefer to keep the basic network config, including DHCP and DNS, in the Network tab. It is easier to the casual users.

If we want to discuss this, we should probably do this in the mailing list and more publicly.

Marking this and #964 as 'needs update' to reflect desire to merge the two.

Working on it. Will post here once it is ready for review. WiP currently, don't merge or build this now :)

Still working in it. It became bigger than expected. I hope to finish this up by the end of the week. Thanks for everyones patience so far!

DUID are not necessary 16 hexdigits; there are different lengths of duid (I've seen mac-based ones in some cases with some additional stuff which are shorter and some longer ones which seem uuid-ish).  No details on the rules though, sorry.  In any event the duid validation just added will prevent entry of valid duid's

Two common types you will see: rfc6355 defines a arbitrary UUID fro 144 bits (16 bit DUID type, 128 bit UUID). rfc3315 LLT defines 102 bits (16 bit DUID type, 16 bit hardware type, 32 bit time, 48 bit mac).

@danrl
Please leave here only your own commits.
Now there are about 48 extra commits. You likely tried to update this branch with new upstream commits, but it does not look good...
You should rebase the branch.
Probably this would work:

first update your master with upstream commits
then checkout this branch
and "git rebase master". That should pick up new commits from master, and move the branching point upward towards HEAD and leave your own commits on top of them. (and eliminate the master commits from this branch.)

Then you can update this github PR with "git push -f"

Oh dear, this is still open :(
There is much more work to do regarding odhcpd than I anticipated. Let me close this and open a new PR once I finished work.
Sorry for the buzz!


Exception when using 'management/spawnas'

hey there,
when i execute the spawnas module, an exception occures:
[!] Error in runas: Exception calling "Start" with "1" argument(s): "The directory name is invalid"
Any ideas?

Hi jbarg, can you proivde a few more details. What OS is your agent on? Screenshot? try running empire with ./empire --debug for more output


Tag: Should use token for border-radius

We should link to the TagComponent from the components list that shows the current status. https://digdir.github.io/designsystem/?path=/docs/komponentoversikt--docs


Adding mentions output to Pandas, and bug fix for issue #152 (Unicode encode error)

I've added the fix I detail here as well as added a mentions column to pandas output.

Thanks @cbjrobertson


top-level: use callPackages where inheriting packages

Description of changes
otherwise those packages cannot be overriden
nix-repl> nomad.override
error: attribute 'override' missing

       at «string»:1:1:

            1| nomad.override
             | ^

With this change they can be overriden
nix-repl> nomad.override
{ __functionArgs = { ... }; __functor = «lambda @ /home/sandro/src/nixpkgs2/lib/trivial.nix:440:19»; }

Resubmition because of revert in #281932 because of an oversight of me.
I tested this with
NIXPKGS_ALLOW_UNFREE=1 NIXPKGS_ALLOW_NONSOURCE=1 NIXPKGS_ALLOW_BROKEN=1 nix build --impure .#prefetch-yarn-deps .#python3Packages.dash .#ivpn .#ivpn-service .#charles3 .#charles4 .#msrtool .#cbmem .#ifdtool .#intelmetool .#cbfstool .#nvramtool .#superiotool .#ectool .#inteltool .#amdfwtool .#acpidump-all .#coreboot-utils .#garage .#garage_0_8 .#garage_0_9 .#garage_0_8_4 .#garage_0_9_0 .#nextcloud26 .#nextcloud27 .#nextcloud28 .#nomad .#nomad_1_4 .#nomad_1_5 .#nomad_1_6 .#nomad_1_7

I used python3Packages.dash instead of fetchYarnDeps because that cannot be directly evaluated.
Please merge this before the next nixos-unstable otherwise we leave configs broken with evaluation errors.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Thanks! If there happens to be another issue, please give me a ping and I take a look into it.

This should have been backported because this is a bugfix.

Backport in #297051

This should have been backported because this is a bugfix.

Since this was the second try already and fully testing this is kinda cumbersome, I was a bit conservative of backporting.


Post Widget: Add simple display mode

Add option to display just the post titles in a compact list format (similar to existing layout options for talks, projects, and publications).

Hello. I am so glad to see that posts can be listed by their titles. Could you kindly tell me how to use this function in our deployed site?


Fixes for #7397 - Boost.Test, since boost 1.48 is using the deprecated Boost.Timer class - it should be updated to use the new class

Pull request for https://svn.boost.org/trac/boost/ticket/7397 allowing boost.test to be used boost.timer. Please see the referenced ticket #7397 for full details.

Apologies for the delay in this - I've been a little snowed under recently but will hopefully get back to this soon

Sure, we also were quite busy lately

Hi Guys, please review the updated pull request. Here is a summary:

The macro BOOST_TEST_USE_DEPRECATED_TIMER has been replaced by a runtime cla --deprecated_timer_format. Specifying this will give the old HRF output for the deprecated Boost.Timer

The XML output has been updated. Given the following test times 0.527163615s wall, 0.450000000s user, 0.050000000s system (and cpu time = user+system = 0.500000000s) the original patch would output the following times - all in nanoseconds. (My earlier comment regarding the XML output was incorrect - regardless though the suggested change still applies)

<TestingTime>500000000</TestingTime>
<WallTime>527163615</WallTime>
<UserTime>450000000</UserTime>
<SystemTime>050000000</SystemTime>

The updated patch will now output:
<TestingTime>500000</TestingTime>
<CpuTime>500000000</CpuTime>
<WallTime>527163615</WallTime>
<UserTime>450000000</UserTime>
<SystemTime>50000000</SystemTime>

That is, <TestingTime> will remain as it is today, a count in microseconds (the HRF output checks if the value is %1000 and displays ms instead of microseconds whereas the XML output just outputs the raw microsecond count). The new fields will all display their values in nanoseconds per the native output from the new Boost.Timer.
This means that existing parsers or scripts that handle the XML output as before (with the exception that Windows users get a more useful time). HRF users relying on the old format need to either update their scripts or enable the option.

Hi Jamie,
Thanks for your continued efforts. I am happy with the features you implemented. I will review and test it tomorrow. We noticed we changed a lot of files in between, hopefully the merge went well.
I'll get back to you tomorrow (France is in mourning today).
Raffi

No problem, take your time and thanks for the quick reply.

Hi,
I merged your pull request to the branch
I have the following errors now when I try to build and run the unit test. I think it is in connection with the inclusion of boost/chrono:
darwin.compile.c++ ../../../bin.v2/libs/test/test/basic_cstring_test.test/darwin-4.2.1/debug/basic_cstring_test.o
In file included from basic_cstring_test.cpp:21:
In file included from ../../../boost/test/unit_test.hpp:18:
In file included from ../../../boost/test/test_tools.hpp:31:
In file included from ../../../boost/test/tools/old/impl.hpp:19:
In file included from ../../../boost/test/unit_test_log.hpp:18:
In file included from ../../../boost/test/tree/observer.hpp:20:
In file included from ../../../boost/test/utils/timer.hpp:15:
In file included from ../../../boost/timer/timer.hpp:14:
In file included from ../../../boost/chrono/chrono.hpp:13:
In file included from ../../../boost/chrono/system_clocks.hpp:64:
In file included from ../../../boost/chrono/detail/system.hpp:12:
In file included from ../../../boost/system/error_code.hpp:14:
../../../boost/system/config.hpp:34:3: error: Must not define both BOOST_SYSTEM_DYN_LINK and BOOST_SYSTEM_STATIC_LINK
# error Must not define both BOOST_SYSTEM_DYN_LINK and BOOST_SYSTEM_STATIC_LINK
  ^
1 error generated.

    "g++"  -ftemplate-depth-128 -O0 -fno-inline -Wall -pedantic -g -dynamic -gdwarf-2 -fexceptions -Wno-long-long -fPIC  -DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_DYN_LINK=1 -DBOOST_CHRONO_STATIC_LINK=1 -DBOOST_CHRONO_THREAD_DISABLED -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_SYSTEM_STATIC_LINK=1 -DBOOST_TEST_NO_AUTO_LINK=1 -DBOOST_TIMER_DYN_LINK=1 -DBOOST_TIMER_STATIC_LINK=1  -I"../../.." -c -o "../../../bin.v2/libs/test/test/basic_cstring_test.test/darwin-4.2.1/debug/basic_cstring_test.o" "basic_cstring_test.cpp"

Any idea?
Thanks,
Raffi

Yes - darwin is a little tricky - basically it looks like Boost.Test either adds the static link defines, or adds the dynamic link all macro. That shouldn't happen. Since previously boost.test did not rely on Boost.Timer and hence Boost.System is might have an override that just worked? I don't have darwin here to try this. What's your b2 invocation line? I might be able to try this here on linux.

Maybe it is reproducible on Linux, because I think in the jamfile the static lib is explicitly required sometimes. I just run b2 from the boost/libs/test/test folder. The command should build and run the necessary.

Ah ok, so nothing special with b2 then. I'll give it a go and get back to you. If you prefer we can take this off the ticket and I can email you directly. Either way though I'll post back here after I've tried to reproduce.

Sorry for the slow reply - I got side-tracked. I can replicate this so I'lI investigate.

Would the pull request #29 solve the issue?

So I've just arrived here to make the very suggestion in  #29 - It was exactly what I was about to suggest but I see I have been beaten to it, so yes please go ahead.

Jürgen's pull request is now applied - I somehow missed that earlier.

I pulled it into the same branch tractickets/7397. Now having some other issues on OSX (apart from some UT that are now failing because of the change of format, which I will fix later). The header variant seems broken.
darwin.compile.c++ ../../../bin.v2/libs/test/test/single_header_test.test/darwin-4.2.1/debug/single_header_test.o
darwin.link ../../../bin.v2/libs/test/test/single_header_test.test/darwin-4.2.1/debug/single_header_test
Undefined symbols for architecture x86_64:
  "boost::timer::format(boost::timer::cpu_times const&, short, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
      boost::unit_test::to_string(boost::timer::cpu_times) in single_header_test.o
  "boost::timer::cpu_timer::stop()", referenced from:
      boost::unit_test::framework_impl::visit(boost::unit_test::test_case const&) in single_header_test.o
  "boost::timer::cpu_timer::start()", referenced from:
      boost::timer::cpu_timer::cpu_timer() in single_header_test.o
  "boost::system::system_category()", referenced from:
      ___cxx_global_var_init2 in single_header_test.o
  "boost::system::generic_category()", referenced from:
      ___cxx_global_var_init in single_header_test.o
      ___cxx_global_var_init1 in single_header_test.o
  "boost::timer::cpu_timer::elapsed() const", referenced from:
      boost::unit_test::framework_impl::visit(boost::unit_test::test_case const&) in single_header_test.o
ld: symbol(s) not found for architecture x86_64

Should we CC Jurgen?
On Sat, Jan 10, 2015 at 3:21 PM, Raffi Enficiaud<EMAIL_ADDRESS>wrote:

I pulled it into the same branch tractickets/7397. Now having some other
issues on OSX (apart from some UT that are now failing because of the
change of format, which I will fix later). The header variant seems broken.
darwin.compile.c++ ../../../bin.v2/libs/test/test/single_header_test.test/darwin-4.2.1/debug/single_header_test.o
darwin.link ../../../bin.v2/libs/test/test/single_header_test.test/darwin-4.2.1/debug/single_header_test
Undefined symbols for architecture x86_64:
"boost::timer::format(boost::timer::cpu_times const&, short, std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&)", referenced from:
boost::unit_test::to_string(boost::timer::cpu_times) in single_header_test.o
"boost::timer::cpu_timer::stop()", referenced from:
boost::unit_test::framework_impl::visit(boost::unit_test::test_case const&) in single_header_test.o
"boost::timer::cpu_timer::start()", referenced from:
boost::timer::cpu_timer::cpu_timer() in single_header_test.o
"boost::system::system_category()", referenced from:
___cxx_global_var_init2 in single_header_test.o
"boost::system::generic_category()", referenced from:
___cxx_global_var_init in single_header_test.o
___cxx_global_var_init1 in single_header_test.o
"boost::timer::cpu_timer::elapsed() const", referenced from:
boost::unit_test::framework_impl::visit(boost::unit_test::test_case const&) in single_header_test.o
ld: symbol(s) not found for architecture x86_64
—
Reply to this email directly or view it on GitHub
https://github.com/boostorg/test/pull/15#issuecomment-69470420.

--
Gennadiy Rozental

He is already as participant of the PR.

And watching the repository :-) Will take a look tomorrow.

I feel like someone breathing over my shoulder :)

Hi Raffi, try out my latest change to add Boost.Timer as a library needed by the single_header_test. It resolves the issue you are seeing for me using g++. Jamie

I solves the problem, but I think the problem lies somewhere else. Anyway, for your fix, I need to solve the UT that is failing now and it should be good.

Yes - I think I know the issue with the failing UT - will let you know once I have a working patch

The issue with the failing unit test was that the old timer (having a lower accuracy) would typically return a 0 time for tests that are executed immediately. In the case of the HRF output used in the pattern matching test it relies on there being no ; testing time ... appended to the Leaving test <test_type> ... message.
Since the pattern matching isn't actually pattern matching at all but a simple by-character comparison it's not feasible to somehow match against a time pattern. It seemed that the best approach was to allow suppression of the timer output altogether in the case of the failing test. In fact I think that's a generally useful feature for people you want to write simple comparison scripts against the test output.
I therefore added a new runtime parameter (and docs for it) called --suppress_timer_output. If this is specified no test time output is provided. I also fixed a copy-paste error for --deprecated_timer_format.
What I haven't done, but we could consider, is update the test helper in the Jamfile to allow test arguments to be specified. Currently I just add --suppress_timer_output directly. So instead of this:
test-btl-lib ( test-rule : test-name : lib-name ? : pattern_file * : source_files * : extra-libs ? : extra-options ? )

we might instead have this
test-btl-lib ( test-rule : test-name : args* :  lib-name ? : pattern_file * : source_files * : extra-libs ? : extra-options ? )

and then we would only specify the option for the failing test.

Hi,
I do not think this option is really useful: having accurate timing in logs and yet doing char to char comparison is just a non-sense and a limitation of the output comparison. I would go for running the tests with the old format instead.
What do you think?

Well - I agree, that would have been my preference. The issue is that a non-zero time may be displayed, regardless of format. The test relies on there being no time displayed. Having said that I'll run it a few times here and see if it will do what we want regardless.

Quick update - using the old format is not sufficient - the issue is we still produce a displayed time. It should probably be noted that suppressing the timer output is only to allow the test output comparison to be checked.
I wouldn't consider it to be an option you'd not generally, if ever, want to use, except of course in the case of classic test output comparisons. Then you don't really want a timer causing an unwanted diff. In that sense I think the option is not unreasonable, but I do agree it would be nicer if the output comparison test itself was not quite so brittle,
I suspect I ran into some of these issues when I first put the patch together in the SVN days and it probably influenced my macro based approach. Boost.Test though has moved on quite a lot since then so it is reasonable there will be some issues like this now.
Thinking on this more and looking at the code and intent of match_pattern() in test_tools.ipp I think suppressing the time output is possibly the correct approach. That we had no time output before was by luck and not by design. Further it appears that the intent of the matching function is to compare two files for an exact match. 'pattern' being a misnomer in this case.
Either way, I think this needs more thought, and it might be that despite an initial dislike of the approach it may in fact be the best approach.

Raffi, it turns out I can make this work with only --deprecated_timer_format by updating has_time() to only consider the User and System time in that case. Unless you've decided you like the utility of --suppress_timer_output I'll go ahead and update the patch to remove the additional option. Also I think it will make sense to also update the test-btl-lib rules to take arguments to make the Jamfile cleaner. Let me know your thoughts. Jamie

I've gone ahead and removed the --suppress_timer_output option. If we decide we want something like that later it will be easy to re-add it. Give the current pull-request a run. All tests pass as expected for me (now I have a proper modular boost setup) - Jamie

Good, I'll test that. I was wondering why with the old format the unit tests were failing, but you gave me the answer.

Works.

Excellent!

And merged, thanks again for working on this.

No problem - thanks for taking the time to give it careful consideration. I'd very much appreciate you also looking at my other two pull requests when you have the time. I've double-checked #16 and it is good, but I still need to review and update #17, especially in light of the new --deprecated_timer_format option. I'll update that pull request when I've done so.

I've commented on #16
On Mon, Jan 12, 2015 at 9:03 AM, ja11sop<EMAIL_ADDRESS>wrote:

No problem - thanks for taking the time to give it careful consideration.
I'd very much appreciate you also looking at my other two pull requests
when you have the time. I've double-checked #16
https://github.com/boostorg/test/pull/16 and it is good, but I still
need to review and update #17 https://github.com/boostorg/test/pull/17,
especially in light of the new --deprecated_timer_format option. I'll
update that pull request when I've done so.
—
Reply to this email directly or view it on GitHub
https://github.com/boostorg/test/pull/15#issuecomment-69573530.

--
Gennadiy Rozental

This need to be reworked as boost.timer is creating a lot of issues in other libraries.

Ok, I can imagine that might be the case given the ultimate dependency on system and chrono. If you want to point me in the right direction of some of the issues I'll take a look and work with you to find a solution. What's your general feeling about this as a whole?

General feeling is that we should have tested this better and develop
branch is not a good place for experiments. Plus I have number of style
issues with these changes I am about to push.
As for the fix, we should support purely header only option. What is the
easiest route for this is the one we should take.
On Wed, Jan 14, 2015 at 4:33 PM, ja11sop<EMAIL_ADDRESS>wrote:

Ok, I can imagine that might be the case given the ultimate dependency on
system and chrono. If you want to point me in the right direction of some
of the issues I'll take a look and work with you to find a solution. What's
your general feeling about this as a whole?
—
Reply to this email directly or view it on GitHub
https://github.com/boostorg/test/pull/15#issuecomment-69996252.

--
Gennadiy Rozental

I mean, I am about to push fixes
On Wed, Jan 14, 2015 at 5:39 PM, Gennadiy Rozental<EMAIL_ADDRESS>wrote:

General feeling is that we should have tested this better and develop
branch is not a good place for experiments. Plus I have number of style
issues with these changes I am about to push.
As for the fix, we should support purely header only option. What is the
easiest route for this is the one we should take.
On Wed, Jan 14, 2015 at 4:33 PM, ja11sop<EMAIL_ADDRESS>wrote:

Ok, I can imagine that might be the case given the ultimate dependency on
system and chrono. If you want to point me in the right direction of some
of the issues I'll take a look and work with you to find a solution. What's
your general feeling about this as a whole?
—
Reply to this email directly or view it on GitHub
https://github.com/boostorg/test/pull/15#issuecomment-69996252.

--
Gennadiy Rozental

--
Gennadiy Rozental

Fixes of? I just reverted the merge.

hmm.. ok. We'll have to review this more carefully before we merge it again.
On Wed, Jan 14, 2015 at 5:46 PM, Raffi Enficiaud<EMAIL_ADDRESS>wrote:

Fixes of? I just reverted the merge.
—
Reply to this email directly or view it on GitHub
https://github.com/boostorg/test/pull/15#issuecomment-70008037.

--
Gennadiy Rozental

Apart from stylistic issues I assume the merge is causing failures in other libraries? Or is this primarily a build issue (libraries depend on test, but test now depends on timer, system and chrono) which is certainly a  problem (though I've not seen it in using boost for the past few years). My previous fallback was of course to allow using the original boost.timer. If the build dependencies (and issues) are insurmountable it might be feasible to take a step back and use a small, lightweight header-only equivalent to boost.timer - removing the dependency entirely.

Yes, in almost everything that is using boost.test as header only, or is using boost.timer old API. I should have taken a deeper look to the boost.timer new vs. old API anyway. I am also reluctant in the fallback macro as we have to maintain two branch of compilation and we do not get rid of the initial problem, which was:

having a more accurate timing in boost.test
getting rid of a deprecated API

All the changes remain in the branch tracticket/7397, and I propose we put these things on hold for a moment.

Agreed. I'll take a look at a lightweight header only option, but yes, putting this on hold for the moment is a good idea.

Any update on this? And in the meantime, is there a workaround for this issue?

Unfortunately no. I involves some changes in the boost.timer library to support header only inclusion.


Different order of initializers call on VM and dart2js

init(var x) {
  print(x);
  return x;
}

class C {
  var x;
  var y;

  C() : y = init("y"), x = init("x") {
    init("C");
  }
}

class D extends C {
  var a;
  var b;

  D() : super(), a = init("a"), b = init("b")  {
    init("D");
  }
}

main() {
  var d = new D();
}

The programm above running on VM produces the following output:
a
b
y
x
C
D

Now compile it by dart2ja and run generated JavaScript. The output is:
y
x
a
b
C
D

Which order of initializers call is correct?
Tested on Dart VM version: 1.24.0-dev.4.0 (Tue May 09 02:15:50 2017) on "windows_x64", Dart-to-JavaScript compiler (dart2js) version: 1.24.0-dev.4.0. Chrome 58.0.3029.96 (64-bit)

According to the last published spec, it's probably dart2js. According to the current spec in the repository, it's the VM.
The specification of object initialization wasn't entirely clear (field initializers weren't specified in a consistent way), and when rewriting that, we also decided to document the VM's behavior as the intended one.
So, the evaluation order of initialization for a class is:

field initializers declared in the class, in source order
initializer list expressions and super-call arguments, in source order
recursive superclass initialization (if class isn't Object)
constructor body executed

For a larger example:
class C {
   var c1 = init("c1");
   var c2;
   var c3;
   C(this.c3) : c2 = init("c2") { init("C"); }
}
class D extends C {
  var d1 = init("d1");
  var d2;
  D() : super(init("c3")), d2 = init("d2") { init("D"); }
}
init(x) { print(x); return x; }
main() {
  new D();
}

This should print:
d1
c3
d2
c1
c2
C
D

(and it is current the VM behavior).
We are considering to require the super-call to be at the end of the initializer list in Dart 2.0. There is no good reason for allowing it earlier since the only thing it affects is when the argument expressions are evaluated. For now, the super-call can syntactically be anywhere in the initializer list, but the superclass initialization always happen after the subclass initializer list.

fixed by using the CFE


support for fabric 2.0

changed shim library to use new repo github.com/hyperledger/fabric-chaincode-go/shim
changef protos library to use new repo github.com/hyperledger/fabric-protos-go/peer
added the 2 new repo (shim and protos) in vendor

Hi Zokama,
Can you add a bit of documentation on how to build the chaincode ? I documented a local deployment and a tutorial on packaging and installing the chaincode directly from the tools container for Hyperledger v1.4.4
Now it seems that it won't work for Hyperledger 2.1.0 as the shim is no longer included in the tools container. I made a fabric-v2-images branch including your changes and the v2 images for testing.


Added option to set the calendar highlight style on a daily basis.

Fixes https://github.com/spectreconsole/spectre.console/issues/1234.
However, this would be a breaking change as the calendar.HighlightStyle() method is completely removed (https://spectreconsole.net/widgets/calendar). --> Maybe the docs need to be adjusted afterwards as well.

@microsoft-github-policy-service agree

Closing it in favor of https://github.com/spectreconsole/spectre.console/pull/1246.


Wrap errors
Stringify structs
Allows the creation of pool groups

Cache addition for PoolGroup is pending. Can do it in the next PR.

Cache addition for pool group also covered as a part of the PR.

@sudswasavi PoolGroup functions like createPoolGroup don't belong in k8s_ep.go. Endpoints directly map to Pools. Info for PoolGroup actually comes from Services & Ingress - the port numbers, protocol and in the future things like A/B Pools. So, even the cloud_config_cksum should the Service ResourceVersion, not Endpoints ResourceVersion. You may want to add PoolGroup related functions in k8s_svc.go instead of k8s_ep.go and use Service's ResourceVersion.

@rangar I have moved the poolgroup creation under k8s_svc.go. My only doubt is - the usage of GetValidPorts method. I am actually deciding what pool groups should be created based on the valid entries in the endpoint object as well. So if the user has created a service without backing pods - we don't create the pool groups for me. Is that acceptable? Or should we always create a poolgroup even if there's no valid backing endpoint based on just the ports in the service object?

@sudswasavi You can derive ports/protocols from svc.Spec.Ports. GetValidPorts does the same from the Endpoints obj. Let's create the Pg & Pool - the server list will just be empty

@sudswasavi Were you now able to get the non-existent to existent deployment case to work now

@rangar yup! That works.


Clarify requirement of Docker-Content-Digest

The V2 API should be serviceable over static web servers. Requiring the Docker-Content-Digest header on requests will make these harder to accomplish. From the specification:

The Docker-Content-Digest header returns the canonical digest of the uploaded blob which may differ from the provided digest. Most clients may ignore the value but if it is used, the client should verify the value against the uploaded blob data.

We need to ensure that the above applies to all uses of Docker-Content-Digest, not just the uploads.
Please see https://groups.google.com/forum/#!topic/docker-dev/zyKH0pnyWnI for discussion.
cc @dmcgowan

We should validate this against #387 before merging.  Docker 1.6.x should happily accept pulling digests without this header.


Issues processing large JSON files

Using gron (even with --no-sort) on a ~180MB file (generated here) results in high mem utilization/cpu load and hanging.

180MB json! Wow, very curious what is in that dataset?


Mainnet launch asset suggestion: Etheremon

Name: Etheremon
Kind: Unknown - ERC721?
Background: https://medium.com/@myetheremon/etheremon-decentralized-world-of-ether-monsters-a4f355971ea2

https://etherscan.io/address/0x4ba72f0f8dad13709ee28a992869e79d0fe47030#code

The contract storing all the data for every Etheremon is: 0xabc1c404424bdf24c19a5cc5ef8f47781d18eb3e
You get information about a monster from getMonsterObj() when passing that monster's ID.
classId is the value you're looking for. Use that as the index of the attached lists to get the name of a class and the filename of its image.
Etheremon Class Names.txt
Etheremon Class Filenames.txt
Simply append that filename to "https://www.etheremon.com/" to get the image URL of a mon. For example, class 39 is Pyrode and its image is: https://www.etheremon.com/0e29c8971f1c0f2be56031ace53d0d2f.png
Etheremon #21 doesn't officially exist, which is the reason for its generic name and blank filename. It is no longer possible to obtain, but for a brief time some people managed to catch it for free by interacting directly with the smart contract. Since the mon technically exists on the backend, it can be traded and might end up on the Wyvern Exchange. There's no official name or image for it so feel free to use whatever placeholder you like or even nothing at all.
Some other data that is not necessary but may be useful to people browsing the market if you choose to include it:

Name: getMonsterName() when passing the monster's ID. This can differ from the class name, as it's the nickname given to a monster by its owner. It's also the only type of name actually stored on-chain.

Experience: "exp" return value from getMonsterObj() when passing the monster's ID. This is how much experience the mon has accumulated in battle. A mon's level is determined by this value.

Level: (from the battle contract: 0xdf6164efd12678bf6a7d5a1ddf73c831493f6574) getLevel() when passing an Experience value. A list is provided for convenience, but you could also perform this calculation easily by copying the math in the genLevelExp() and getLevel() functions of that contract.
Etheremon Level Experience.txt

Catch #: "createIndex" return value from getMonsterObj() when passing the monster's ID. This counts from 1 and represents how many Etheremon of the same class existed in the world once it was caught. Some people might care about catch # for collector's value, and in Etheremon's frontend the first three mons of each class display the following badges:
1: https://www.etheremon.com/7cd29d65f88be9616e544acd6e69db82.png
2: https://www.etheremon.com/268c7ea6ad26ba823cd198032f220bda.png
3: https://www.etheremon.com/45d371164725aefd8ad9f6264842faaa.png

Stats: Each mon has six stats that determine its effectiveness in combat. They are HP, Primary Attack (PA), Primary Defense (PD), Secondary Attack (SA), Secondary Defense (SD), and Speed (SP).
You use the monster's unique ID and the monster's class ID to look up the following two values in the data contract for each stat:
Starting value: getElementInArrayType(3, monId, stat)
Growth rate: getElementInArrayType(1, classId, stat)
You can then calculate the actual stat values using these and the monster's level:
stat = startingValue + level * growthRate * 3
Etheremon #25478 is a Cryptise (class #81). As of this writing it has 1132 experience, which makes it level 8. Its starting stats are:
HP: getElementInArrayType(3, 25478, 0) = 61
PA: getElementInArrayType(3, 25478, 1) = 79
PD: getElementInArrayType(3, 25478, 2) = 66
SA: getElementInArrayType(3, 25478, 3) = 75
SD: getElementInArrayType(3, 25478, 4) = 75
SP: getElementInArrayType(3, 25478, 5) = 79
And Cryptise's growth rates are:
HP: getElementInArrayType(1, 81, 0) = 2
PA: getElementInArrayType(1, 81, 1) = 1
PD: getElementInArrayType(1, 81, 2) = 1
SA: getElementInArrayType(1, 81, 3) = 2
SD: getElementInArrayType(1, 81, 4) = 1
SP: getElementInArrayType(1, 81, 5) = 2
Thus its final stats are:
HP: 61 + 2*8*3 = 109
PA: 79 + 1*8*3 = 103
PD: 66 + 1*8*3 = 90
SA: 75 + 2*8*3 = 123
SD: 75 + 1*8*3 = 99
SP: 79 + 2*8*3 = 127

BP: An Etheremon's BP is simply the floor of the average of all six stats. Continuing the above example, that Cryptise's BP is 108.

Type: getElementInArrayType(0, classId, index) with "index" counting from 0 and continuing for however large the array is. Each class has one or more types which can provide advantages or disadvantages in combat depending on the opponent's types. There are 18 types in total and their names (and filenames for the corresponding icons) are provided in the attached lists. Type #10 is currently unused so I do not know its name or filename.
Etheremon Type Filenames.txt
Etheremon Type Names.txt

I believe that covers absolutely everything anyone could possibly want to know about an Etheremon and how to find it all from its ID. The only parts of this that could ever need updating are the image filenames. I will provide an update as soon as possible whenever new classes are added or if the image URLs ever change. Eventually there will be a way to get that data automatically, but for now I hope this is good enough!

@goanym Thank you - this looks great.
I will look into adding Etheremon today if possible and tomorrow at the latest.

Updated lists including the new mons that were released today:
Etheremon Class Filenames.txt
Etheremon Class Names.txt

Order placement and matching functionality works, e.g. https://exchange.projectwyvern.com/orders/0x58673e230baddc394e35d00cbeea83ac73b01aa9dcc8482bb654955ab4b6ed0d.
I do not think Etheremon implements the ERC721 spec completely - it looks like FreeTransfer events are only fired when a user trades an Etheremon (not during initial purchase). This means Etheremon will not - yet - show up on the assets page in all cases. Etheremon is not the only game for which this is the case, planning to implement a workaround ASAP.

Indexing solution implemented (reading trainerDex); all Etheremon should now show up on the assets page.
@goanym Anything else that would be helpful?

ERC721 wrapper added - https://etherscan.io/address/0xb2c0782ae4a299f7358758b2d15da9bf29e1dd99#readContract
API for token info - https://www.etheremon.com/api/monster/get_data?monster_ids=1001
Transfer event still only fired through the ERC721 proxy contract.


Unrecognized function or variable 'toC'

I am trying to get plotly offline working with matlab 2024a and I keep encountering the error
Unrecognized function or variable 'toC'.

Error in extractAxisData (line 90)
    tickLabels = toC(axisData.(axisName + "TickLabel"));

Error in updateAxis (line 76)
        [xaxis, xExponentFormat] = extractAxisData(obj,axisData, 'X');

Error in plotlyfig/update (line 779)
                    updateAxis(obj,n);

Error in plotlyfig (line 292)
                obj.update;

Error in fig2plotly (line 42)
    p = plotlyfig(varargin{:});

If I switch to tag 2.5.5 the issue goes away.
The code is also quite different in extractAxisData between the two versions

I am also having the same problem. How should I implement your solution? Should I install version 2.2.5? It is quite weird that a function should be missing. Perhaps it can be easily created?

Try removing the toC call in toC(axisData.(axisName + "TickLabel"))
ex: tickLabels = axisData.(axisName + "TickLabel");

I asked GPT to create the function toC and it worked. Just add it to the root dir.
function out = toC(in)
% Converts the input into a cell array
% Handles different data types appropriately
if iscell(in)
    % Input is already a cell array
    out = in;
elseif ischar(in) || isstring(in)
    % Convert character arrays or strings to cell array of strings
    out = cellstr(in);
elseif isnumeric(in)
    % Convert numeric arrays to cell array of numbers
    out = num2cell(in);
elseif isdatetime(in) || isduration(in)
    % Convert datetime or duration arrays to cell array of strings
    out = cellstr(in);
elseif iscategorical(in)
    % Convert categorical arrays to cell array of strings
    out = cellstr(in);
else
    % If the input type is unexpected, return it as is
    out = in;
end

end


Allow to request the originals as well

@alexnederlof @wouter-willems Ready for review!

:+1: for code, but it would really help if you would add doc with example URLs so I can actually follow what all those matches etc do


Create, research and provide a good structure for GitHub wiki

A basic structure has been written. Project wikis commonly have bits about processes, of which I'll have to think more about.


Update front-end to prepare for Stripe update

Amplify has a Constituents table to store user data; however, it is currently unused. You can see in the wiki that the Constituents table should have a first_name and last_name field. To prepare the app to store constituent data, the front-end will need to be modified in a number of ways.
Todos:

[ ] Update the SignName component to have a first name and last name field. There is already a data validation for name that can be copied over.
[ ] Update the Vuex store to have a first name and last name property for the userData object.
[ ] There is actually a bug in the TakeAction.nextPagemethod that is overriding userData with an empty object. Fix this method so it doesn't write over the data that the user just filled out.
[ ] I believe that Lob only has a name property for the letter, so create a computed property that concatenates the user's name together for both the letter display and also when the user is passed to /createLetter.
[ ]  Any other spots that need fixing that I might have missed.

Hi @DietBepis1, I am a full stack developer but new to open source. Pls guide me on how can I get started with contributing to this organization

@lokeshkumar0001 Hey Lokesh, welcome to open-source and Program Equity! 😊 I would recommend you have a look at the codebase and the issue details and ask any specific questions you come across.

@paramsiddharth Thanks for your help. May I know where to ask any specific questions. Do you have any slack or discord channels? or anything like that?

@paramsiddharth Thanks for your help. May I know where to ask any specific questions. Do you have any slack or discord channels? or anything like that?

@lokeshkumar0001 Sure! Here's our Slack: https://join.slack.com/t/programequity/shared_invite/zt-1p1buco3b-yUXjDaKSz3OSJfaHj88Y4g

Hi all! I'm going to pick this up, if that's ok with everyone! Glenn sent it to my pod leader as something that I might be able to contribute on.

I worked on the first todo item for the SignName component:
Update the SignName component to have a first name and last name field. There is already a data validation for name that can be copied over.
Notes:

Remove name text field
Add firstName text field

Update rule to require firstName field
Update placeholder text

Add lastName text field

Update rule to require lastName field
Update placeholder text

Update data object with firstName and lastName fields
Update computed form() function with first_name and last_name fields

Pull request: https://github.com/ProgramEquity/amplify/pull/547

Branch: issue-521

hi @Dunridge and @christina-ml are you working on this issue? I would like to collaborate if so. If you aren't, I can take care of it! Thanks

@santi-jose @Dunridge  I have updated my Pull Request #547. Can someone please review my pull request, to see if it can be merged?

Feel free to assign yourself to work on this issue 🙂

Hi @christina-ml nice to see you here
@santi-jose this issue is outdated I will close it
You can have a look at https://github.com/OpenSourceFellows/amplify_docs/discussions/11 for front-end issues, hope that helps


Batch timing needs to be spread out and balanced to avoid batching spikes

Problem statement
76 out of 91 receivers have timing starting at 1:15am or 9:15am ET every day. This results in a batching spike at 09:15 with pagerduty alerts sent out shortly after.
To do

[ ] Develop plan to balance batch timing
[ ] Adjust production settings

Need to determine if this is needed, and plan out usage across receivers.

@brick-green-agile6 please set time with Pipeline and DevOps on next steps.

Here is the breakdown of our current batch timing:

Proposed batch timing:

@Adrian-Brewster is there any communication that will be needed here to the STLTs? I tried to keep the file creation time change to under 20 mins but a few have a change of 35 mins. In my mind that still fairly small and I can't see that being an issue for any STLTs. But what do you think?

@brick-green-agile6 No, I dont think so.  When discussing batch timing in the past, there were no states that I can think of that had specific requirements and often it is discussed in a "around this time" sort of way. We should be good

cool, working the change now

PR was merged. Now I need to make the changes in staging and prod


Remove version: Meta.Oculus version 1.97.0

[Automated] It returns code over 400 in all urls
Microsoft Reviewers: Open in CodeFlow

Close with reason: URL works;