Broken with Capistrano 3.7

Related to issue #15. With Capistrano 3.7 I get the following error:
user@pc ~/app> cap -T --trace
cap aborted!
LoadError: cannot load such file -- capistrano/git
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/capistrano-git-submodule-strategy-fa678a8160c8/lib/capistrano/git-submodule-strategy.rb:1:in `require'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/bundler/gems/capistrano-git-submodule-strategy-fa678a8160c8/lib/capistrano/git-submodule-strategy.rb:1:in `<top (required)>'
/home/user/app/Capfile:18:in `require'
/home/user/app/Capfile:18:in `<top (required)>'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/rake_module.rb:28:in `load'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/rake_module.rb:28:in `load_rakefile'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/application.rb:687:in `raw_load_rakefile'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/application.rb:96:in `block in load_rakefile'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/application.rb:178:in `standard_exception_handling'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/application.rb:95:in `load_rakefile'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/application.rb:79:in `block in run'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/application.rb:178:in `standard_exception_handling'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/rake-12.0.0/lib/rake/application.rb:77:in `run'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/capistrano-3.7.0/lib/capistrano/application.rb:14:in `run'
/home/user/.asdf/installs/ruby/2.3.0/lib/ruby/gems/2.3.0/gems/capistrano-3.7.0/bin/cap:3:in `<top (required)>'
/home/user/.asdf/installs/ruby/2.3.0/bin/cap:22:in `load'
/home/user/.asdf/installs/ruby/2.3.0/bin/cap:22:in `<main>'
/home/user/.asdf/installs/ruby/2.3.0/bin/ruby_executable_hooks:15:in `eval'
/home/user/.asdf/installs/ruby/2.3.0/bin/ruby_executable_hooks:15:in `<main>'

Try my new plugin capistrano-git-with-submodules


Drawer Opening as well

When I swipe right the drawer menu opens as well. I guess this is a propagation issue. Not sure how to prevent it though as there is no event to use stopPropagation with.

See the card.js file in Trendicity

https://github.com/trendicity/trendicity

@keithdmoore Cheers!


matlab integration

Motivated by needs from the lab I'm thinking DSC2 should be able to wrap matlab codes as 'plug-in' in flavor similar to R and Python, rather than as command executables. Not sure how hard it is but it looks the only existing package to leverage is R.matlab. Will see if I'll make it happen as we build the factor anlaysis benchmark for FLASH.

Alternatively we can leverage scipy.io.savemat in Python.The downside is that the data transfer goes like R -> Python -> matlab -> Python -> R but I still feel it would perhaps be more reliable than an R package.


Update README.md with DWOC

Add DWOC (DevScript winter of code) in programs associated section.

@goliakshay357 May I go for it ?

@goliakshay357 May I go for it ?

Sure!

Sure!

Sure!

Thanks lemme send the quick PR !! for the same.

Sure!

Thanks lemme send the quick PR !! for the same.


Keyboard navigation gets "stuck" in some platforms when using an iframe in full screen mode

So far found in Mac Mojave 10.14, Windows FF and Edge. When using an accessible display in an iframe in full screen mode, tab navigation can get stuck. Copying some comments from the original issue in https://github.com/phetsims/coulombs-law/issues/74 and moving to Scenery because this is a general issue.

Seen in https://phet-dev.colorado.edu/html/resistance-in-a-wire/1.5.0-rc.9/phet/resistance-in-a-wire_en_iframe_phet.html when testing on firefox, though pressing shift + tab would highlight the phet menu and nothing else. This seems to mean it is not coulombs-law specific.

Problem goes away when the dev tools are open.

Wait, this sounds crazy but in FF, it seems related to the popup that FF shows when entering full screen mode. When you first enter full screen mode, FF pops up a little dialog that says "localhost:8080 is now full screen". As long as that is showing, you can tab navigate all you want. Once it disappears, tab navigation in full screen mode is broken.

In FF I added this:

window.setInterval( function() {
  console.log( document.getElementById( 'iframe' ).contentDocument.activeElement );
}, 1000 )

and when focus gets lost, it is printing the "html" element of the iframe document.

On the other hand, in Edge, we are getting

SCRIPT5: SCRIPT5: Access is denied.

EDIT: Edge seems to report this even when focus is working correctly, so it doesn't like #74 (comment) either way. NOt a good test.

I made this: https://jsfiddle.net/wx9Louhr/1/ and the problem is not present in FF.

When navigating in FF in full screen mode, I can see that I am focusing links outside of the test document I created, and then when I reach the last one, focus doesn't go anywhere else.

Nothing about tab navigation in https://developer.mozilla.org/en-US/docs/Web/API/Fullscreen_API.

I haven't been able to find documentation about this or bug reports. Tab navigation doesn't loop on these platforms when basic HTML is the target of full screen, or will include things outside of the iframe.

This is also probably blocking https://github.com/phetsims/QA/issues/210.

@jessegreenberg could I add the blocks-publication label?
Also, would you like to pair on this tomorrow or Monday?

Absolutely to both!

We talked about this in a11y dev meeting today. I think we are ready to proceed with a workaround.
We explored this a bit and tried to reproduce the problem in a JSFiddle in FF. We are thinking that a workaround is the best way to go. We are hoping that we can use event.relatedTarget in AccessiblePeer.blur to detect where focus is going in this case and prevent this behavior.

We also verified that the problem is only when launching the sim from an iframe.

From https://github.com/phetsims/scenery/issues/883#issuecomment-431176082, adding the blocking label, this is a blocking issue for sims that have keyboard navigation and description enabled.

Adding this to globalKeyListener of AccessibleInstance fixes the problem in FF and IE11:
          if ( FullScreen.isFullScreen() && event.keyCode === KeyboardUtil.KEY_TAB && !event.shiftKey ) {
            var elementIsLast = AccessibilityUtil.getNextFocusable( self.display.accessibleDOMElement ) === event.target;
            if ( elementIsLast ) {
              event.preventDefault();
            }
          }

This fixes tab navigation, though readable things outside of the iframe are still discoverable by the AT. But focus recovers gracefully in this case, and it should be up to the parent of the frame to hide content from AT in full screen mode.

Focus gets lost in Edge when navigating backwwards, so we should add a similar check navigating backwards.

This should be fixed with the above commit.

@KatieWoe verified that this issue has been fixed in the above issue. Closing this one.

@KatieWoe pointed out an extension of this bug in Edge. When launching full screen mode in Edge from an iframe, if you click outside of the simulation frame, then click with mouse to activate full screen mode, you can't focus anything in the sim, even if you click inside the sim with a mouse.

f you click outside of the simulation frame

This is critical for the bug.
Also @KatieWoe said that if the browser alert dialog that says "Page has entered full screen mode", focus can get stuck in there. There is probably less we can do about this.

Referencing this issue again so it shows up with others in the QA issue: https://github.com/phetsims/scenery/issues/883

Referencing the qA issue so that it shows up with the others: https://github.com/phetsims/QA/issues/214

Well, this part is starting to feel more like an Edge problem because when testing, we aren't even reaching the keydown listener on the body when this happens.

I was able to verify that this is an Edge bug.

If focus is outside of the iframe when the iframe when full screen is requested, this happens. Clicking on the iframe doesn't focus the iframe (at least in Edge). I don't know if a workaround is possible, but I also don't know if it is worth our time to find one. @emily-phet can you please comment?

@jessegreenberg I think I can make the call here. This is definitely quite an "edge" case especially since edge such low usage of our sims. You need to be in an iframe, in fullscreen, a rare use case. Lets defer for the moment, and continue working on getting this sim out.

@ariel-phet Thanks for weighing in. Sounds good to me.

@jessegreenberg and I will try to start the batch release process for this next week.

Maintenance releases deployed to a11y sims for the original issue in this thread. We are not fixing the edge bug in https://github.com/phetsims/scenery/issues/883#issuecomment-436052901, so this issue is complete and we can close.


Add check to max difficulty transition threshold

When computing the maximum difficulty transition threshold we forgot to check that the returned Target is not bigger than the maximum. This value is network specific so keep the original logic but with _unchecked on the function name.
This was noted in the discussion on #2161

Note, this is an API breaking change. Done on purpose so users have to decided what to do about the network.

Note this cannot be backported because we didn't have the max attainable consts yet in the last release.

We also need to check that our minimum shift doesn't go below 1. (And unlike the maximum, the minimum limit has actually been hit on the mainchain many times.)

Yeah, ACK with fixed minimum.

Note this cannot be backported because we didn't have the max attainable consts yet in the last release.

We could backport those. But it can't be backported because it's a breaking change. :) And while it's a bugfix it's easily solvable in user code. We should probably actually backport the constants - but only the constants and tell people to manually implement the check for now.

Add check for not less than 1 to minimun transition threshold.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.04%) to 84.228%

Totals

Change from base Build<PHONE_NUMBER>:
-0.04%

Covered Lines:
19225

Relevant Lines:
22825

💛  - Coveralls

I've split the PR up into multiple patches so each patch does one conceptual thing.

CI failure looks real.

ebb80f1568098d0533b65069bdce7966e7612fcf lgtm other than the NaN thing.

Changes in force push:

rebased to pick up #2488
Used network: impl Into<Network> as parameter everywhere in pow module (required removing const from one function)

Sure thing, sounds reasonable.

I've changed the last patch to use Params which simplified the API, please re-review.

and the nmove the MAX_ATTAINABLE_TARGET constant into Params.

On further consideration this comment didn't make sense because we have Params::max_attainable_target already and the consts have to live on Target to get access to the inner U256. I've left it as it was. Please say if I'm missing something.

Will need #2499

899bc350a9b1a1326dab174c693825764f29abdd looks great except that I'd suggest just renaming the pow_limit field instead of adding an accessor method for it.
I wonder if it's possible to deprecate the old field.

Cool, I deprecated the Params::pow_limit field and added a new one max_attainable_target.

Your new commit contains a stray #[doc] line which is causing the CI failures. But ACK 310cd34002f6c74b5cbed7334b0ef72396a3b816 other than that.

Woops, it was supposed to be [cfg(doc)] - fixed, no other changes.

ACK 2f89f80995b7d96820a758f765d39efd69aeb15d except that we need to add an AsRef impl for Params to make this usable. (I checked the docs for AsRef ... they are apologetic but say that you do need to do this.)

Nice that they finally documented it, haven't seen it before. (Though I understood why.)

Thanks, so my initial surprise at the need to implement that was correct. Will add an impl, and use AsRef<Params>.

The merge-base changed after approval.

I think GitHub is wrong, tip of this branch is still the ack'ed commit hash.

Will try again. In the past when Github gets like this you just have to wait a day or two.

Heh, when I try to re-ACK I get clippy complaints (presumably because I added --all-features, after discussing this elsewhere).
In particular, in ccb4d5709bb0e27e4190b69c323edfea5c6042b3:
rror: the borrowed expression implements the required traits
   --> bitcoin/src/blockdata/block.rs:541:50
    |
541 |         assert_eq!(real_decode.header.difficulty(&params), 1);
    |                                                  ^^^^^^^ help: change this to: `params`
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html>
    = note: `-D clippy::needless-borrows-for-generic-args` implied by `-D warnings`
    = help: to override `-D warnings` add `#[allow(clippy::needless_borrows_for_generic_args)]`

error: the borrowed expression implements the required traits
   --> bitcoin/src/blockdata/block.rs:583:50
    |
583 |         assert_eq!(real_decode.header.difficulty(&params), 2456598);
    |                                                  ^^^^^^^ help: change this to: `params`
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html>

I dunno how I feel about this lint ... it seems a bit sketchy to pass a large object by value rather than by reference just because it's possible. But this is just test code so we might as well change it.

Ok, I'm not entirely sure what the compiler does in this instance. Params is not Copy so the calls to difficulty consume the local variable, does that mean that the variable can be passed by reference under the hood? I.e., does the stack frame for the difficulty call include a copy of the Params or a pointer to it (in the previous stack frame) - both seem technically possible but I don't know enough about how the borrow checker is implemented?
The question above is theoretical IMO because as far as the lint goes I think it is correct, the argument is a generic AsRef<Params> so we should just trust the compiler and let it work out whats best, right?

Changed the two unit tests to consume Params in the call to difficulty.

I had a bit more of a dig and it seems that the exact same assembler is created by consuming and pass-by-reference. I compiled this (using cargo rustc -- --emit asm)
fn main() {
    let b = Big::new();
    foo(b);
}

fn foo(big: impl AsRef<Big>) {
    let big = big.as_ref();
    println!("{}: {}", big.value, big.data[0]);
}

struct Big {
    value: u32,
    data: [u8; 4096],
}

impl Big {
    fn new() -> Self {
        Big { value: 42, data: [0; 4096] }
    }
}

impl AsRef<Big> for Big {
    fn as_ref(&self) -> &Big { self }
}

and got the relevant part is
.Ltmp29:
	.loc	10 3 5
	leaq	4(%rsp), %rdi
	callq	_ZN4play3foo17hc5a5ee4716cd5facE
.Ltmp30:
	.loc	10 4 2 epilogue_begin
	addq	$4104, %rsp
	.cfi_def_cfa_offset 8
	retq
.Ltmp31:
.Lfunc_end9:
	.size	_ZN4play4main17h1eed9cae55549deeE, .Lfunc_end9-_ZN4play4main17h1eed9cae55549deeE
	.cfi_endproc

	.section	.text._ZN4play3foo17hc5a5ee4716cd5facE,"ax",@progbits
	.p2align	4, 0x90
	.type	_ZN4play3foo17hc5a5ee4716cd5facE,@function
_ZN4play3foo17hc5a5ee4716cd5facE:
.Lfunc_begin10:
	.loc	10 6 0
	.cfi_startproc
	.cfi_personality 155, DW.ref.rust_eh_personality
	.cfi_lsda 27, .Lexception1
	subq	$216, %rsp
	.cfi_def_cfa_offset 224
.Ltmp32:
.Ltmp39:
	.loc	10 7 15 prologue_end
	callq	_ZN67_$LT$play..Big$u20$as$u20$core..convert..AsRef$LT$play..Big$GT$$GT$6as_ref17h54e511cd347

And if we change the call to foo(&b) we get:
.Ltmp31:
	.loc	11 3 5
	leaq	4(%rsp), %rdi
	callq	_ZN4play3foo17hc7bc596e2262e755E
.Ltmp32:
	.loc	11 4 2 epilogue_begin
	addq	$4104, %rsp
	.cfi_def_cfa_offset 8
	retq
.Ltmp33:
.Lfunc_end10:
	.size	_ZN4play4main17h1eed9cae55549deeE, .Lfunc_end10-_ZN4play4main17h1eed9cae55549deeE
	.cfi_endproc

	.section	.text._ZN4play3foo17hc7bc596e2262e755E,"ax",@progbits
	.p2align	4, 0x90
	.type	_ZN4play3foo17hc7bc596e2262e755E,@function
_ZN4play3foo17hc7bc596e2262e755E:
.Lfunc_begin11:
	.loc	11 6 0
	.cfi_startproc
	.cfi_personality 155, DW.ref.rust_eh_personality
	.cfi_lsda 27, .Lexception1
	subq	$216, %rsp
	.cfi_def_cfa_offset 224
	movq	%rdi, 40(%rsp)
.Ltmp34:
	leaq	40(%rsp), %rdi
.Ltmp41:
	.loc	11 7 15 prologue_end
	callq	_ZN55_$LT$$RF$T$u20$as$u20$core..convert..AsRef$LT$U$GT$$GT$6as_ref17h41765ce7f21401a5E

I'm no assembler expert but I think the rsp stuff is what counts. I think leaq	4(%rsp), %rdi is the pointer back to b in the previous stack frame.

Ok so I think we essentially said the same thing. I believe the issue is that fundamentally references in Rust are not like references in C but are just syntax sugar for the borrow checker - and Copy controls what the code gets de-sugared to. Do you agree with this statement? (I'm interested in exploring this because I constantly treat them like in C because old habits die hard.)

I believe the issue is that fundamentally references in Rust are not like references in C but are just syntax sugar for the borrow checker - and Copy controls what the code gets de-sugared to. Do you agree with this statement?

No :) References in Rust are far more like references in C than like "syntax sugar for the borrow checker".
The borrow checker is just a lint pass. After it's run all lifetimes are erased and the compiler is completely unaware of it. At that point & means taking a pointer to an object (ok, modulo autoref and some other Rust weirdness) and the absense of & means passing it by value.
This lint advice is actually pretty bad.

oh, cool, thanks for the explanation.

Rebase only, no other changes.

ACK 141bfc92aca469e7ccd7a4c16b26f87fb79ba03f except that I think we should put the &s back on params and globally whitelist the clippy lint. You can link to https://github.com/rust-lang/rust-clippy/issues/12454 as a comment on the whitelist.

Of course, my bad - I had understood that was what we were doing but did not implement it.

Note, no whitelist - I cannot get the clippy warning locally - will use CI.

Oops, I had clippy disabled for that ACK. Lemme try again to get the warning.

Here we go. It's clippy::needless-borrows-for-generic-args.
error: the borrowed expression implements the required traits
   --> bitcoin/src/blockdata/block.rs:541:50
    |
541 |         assert_eq!(real_decode.header.difficulty(&params), 1);
    |                                                  ^^^^^^^ help: change this to: `params`
    |
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
    = note: `-D clippy::needless-borrows-for-generic-args` implied by `-D warnings`
    = help: to override `-D warnings` add `#[allow(clippy::needless_borrows_for_generic_args)]`

I added https://github.com/rust-bitcoin/rust-bitcoin/pull/2337/commits/16e64ef30ac031526f21f125a14e3f4154ba5b71 at the front of the PR.

@sanket1729 this only has rebases since you last acked.
git range-diff 1165c2c...@
-:  -------- > 1:  b3c28e9c Allow needless-borrows-for-generic-args
1:  31b19e04 = 2:  c00b756e Document current behaviour of difficulty_float
2:  d8de117e = 3:  bc5bd736 Debug assert that target != zero in difficulty calc
3:  0c63d0c2 = 4:  502a76b4 Take Params instead of Network in difficulty function
4:  dc1f6514 = 5:  39c269e7 Rename Params::pow_limit to max_attainable_target
5:  1b34fb06 = 6:  1112b03d Rename difficulty transition threshold functions
6:  1165c2c4 = 7:  aa4591d3 Improve API for max target threshold calculation

Rebased, some changes show up in git range-diff due to rustfmt.

This has minimal changes since @sanket1729 acked (just rebase and the stuff caused by now being on top of a formatted codebase after #2462). Can be merged by way of rule 4 of the one ack carve-out.


Installation error

Hi there,
I am getting the following error when I try to run this part. Any thoughts?
fastai::install_fastai(gpu = FALSE, cuda_version = '10', overwrite = FALSE)
r-miniconda/envs/r-reticulate/python.exe" -m pip install --upgrade "torch==1.8.0+cpu torchvision==0.9.0+cpu torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html" "IPython" "pydicom" "kornia" "opencv-python" "scikit-image" "timm" "fastinference[interp]"
ERROR: Invalid requirement: 'torch==1.8.0+cpu torchvision==0.9.0+cpu torchaudio==0.8.0 -f https://download.pytorch.org/whl/torch_stable.html'
Thank you very much for your time.
Kind regards,
M

Hi, AFAIR the issue is related to reticulate.
Please, do the following and try to reinstall fastai.
require(devtools)
install_version("reticulate", version = "1.21", repos = "http://cran.us.r-project.org")

Great, it worked... I thought it could not find the specified torch versions.

The new CRAN version does not require reticulate downgrade. Thanks


SLES 15 SP4 has a Python 3 module instead of a Python 2 module

Change the namespace for the Python module to be version independent and
include the python3 module release package in 15 SP4 and later distros

No more python 2? Excellent. :)


QuickInput: pick - basecase

  1) QuickInput
       pick - basecase:

      + expected - actual

  Error: Timeout of 5000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.

https://github.com/microsoft/vscode/runs/6045722620?check_suite_focus=true#step:14:9424

Again: https://dev.azure.com/monacotools/Monaco/_build/results?buildId=167696&view=logs&j=672276a2-8d3a-5fab-615d-090c51352f92&t=821d316a-2fa3-581f-c34c-57a961b8e328&l=9453
I think these tests need to stop using an arbritrary timeout of 200 ms and find a different way of figuring out.


Fix regression in court details display

Description of change
Fix regression where court details not shown.
Link to relevant ticket
Notes for reviewer
Screenshots of changes (if applicable)
Before changes:
After changes:
How to manually test the feature

Wrong pr


Fix typos/naming

This PR:

fixes some small typos
makes the usage of the InvenTree name more consistent among exposed strings
renames the core plugin to include the inventree prefix

/cc @wolflu05


JavaScript SDK integration failing on Identity Server - Windows

Describe the issue:
Followed by "[IS-Docs] Integrate SDK to Identity Server guide" the JavaScript sample app is not running in the localhost. However the Angular and React apps worked fine.
The output on cmd for npm install && npm start

The output on WSL for npm install && npm start

The output on https://localhost:5000/

How to reproduce:
Steps to be followed can be found here IS-Docs Integrate SDK to Identity Server
Expected behavior:
The sample JavaScript app should run without any exceptions
Environment information:

Product Version: [IS 5.12.0 Alpha20]
OS: [Windows]
Database: [PostgreSQL]

@Nirmal-De-Silva-99 can you check localhost:3000 port? Recently team has changed the port of the sample apps to 3000 due to some conflicts in the 5000 port in MacOS.
You can check these readMe  of following sdks, they ask to configure 3000 port
https://github.com/asgardeo/asgardeo-auth-js-sdk
https://github.com/asgardeo/asgardeo-auth-react-sdk

Tried with localhost:3000 port, still shows the same output.

I have the same problem.

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


Is it possible to limit output to certain length?

I am in need for creating short URLs, so the output length needs to be short. How can I limit that and what will be the consequences on doing it?

The minimum hash length is by default as short as possible.
You can see this here :)

So its 0 as default :P
Ok, so suppose my id is something like this 1234567 what will be the output length? I was thinking of limiting the output(max hash length) to only 6 chars. Hopefully I am clear.

@whimsicaldreamer you can play around with the demo here: http://codepen.io/ivanakimov/pen/bNmExm
You can specify the minimum id length (which works like padding), but not the maximum as you'll overflow it eventually if the number is big enough.


[Behat][Invoice] Fix usage of method checking line items after last changes

After https://github.com/Sylius/InvoicingPlugin/pull/287

Thanks, Grzegorz! :1st_place_medal:


Turn off cost allocation tags by default

The addition of cost allocation tags in https://github.com/buildkite/elastic-ci-stack-for-aws/pull/398 broke our tests because it needs to be activated per-account:
https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/activate-built-in-tags.html
I've added a EnableCostAllocationTags that defaults to false, and also renamed the parameters CostAllocationTagName and CostAllocationTagValue.

Feels @tduffield?

@lox looks good to me!

@toolmantim yeah, I was umming and ahhing over names. I'll roll with that.

Done @toolmantim


Reorder cucumber tests to more logical files

Codecov Report

Merging #7 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master       #7   +/-   ##
=========================================
  Coverage     89.97%   89.97%
  Complexity      101      101
=========================================
  Files             9        9
  Lines           409      409
  Branches         49       49
=========================================
  Hits            368      368
  Misses           33       33
  Partials          8        8

Continue to review full report at Codecov.

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


feat: support schema file as command line arg

As discussed in issue #73, here is a first cut at enabling a schema file to be supplied as a command line arg.
It relies entirely upon the json schema handling provided by arrow, which means there can be unexpected outcomes if mistakes are made while defining the schema...
The main problem will be that it seems the columns in the json schema are applied in numeric order to the columns in the CSV. If the json schema omits a column, the column definitions will get misaligned, meaning that columns may end up with the wrong heading or there are (poorly reported) incompatibilities between the data in the CSV file and the type expected for the column (i.e. trying to push a float into an int).
These problems can largely be avoided by using the schema inference process to generate an initial schema file, which can be edited prior to running a full convert.
As there is a pretty straight forward way of getting most cases to work with the functionality as implemented here, this seems like a good place to start. (it's good enough for my needs at the moment anyway :) )
Note: I wrote this against Arrow/Parquet 9.1.0 and got it working, then raised the version of those dependencies to 12.0.0 (latest release) and everything continued to just compile and work.

Thank you for the implementation and the patience with my reviews. Could you send PRs for the related repos now? Once they are in, I will make a release.

No worries, I appreciate you tolerating my bumbling newbie efforts.
Yes, I'll take a look at the related repos over the next few days.


Conduit crash

I put a conduit connected to a multi page chest and then crashed.
Sorry my english :(
Log: http://goo.gl/aq8JR7

rv1 is not supported, update AE2


ARROW-1511: [C++] Promote ArrayData, MakeArray to public API, deprecate MakePrimitiveArray

Since ArrayData will become more exposed to users with the advent of arrow::compute, it should be a part of the public API.

@xhochy I didn't figure this would be controversial (since this was an internal API before) but have a look in case it affects turbodbc or anywhere else

Test failure is due to the unrelated glib thing seen elsewhere


some problems in using modern_fftpack via Intel Fortran 2017

Hello, jlokimlin!
I am trying to apply the modern_fftpack to my code by Intel Fortran 2017 with Visual Studio 2015 community version on Windows 7 64bit, and I encountered some problems：

Multiple PUBLIC statement/attribute declarations in type_FFTpack.f90 is not allowed in Intel Fortran 2017；

The FFT forward transform result differs from the result obtained by the fftpack library in netlib, and the result by netlib fftpack is N scaled of the result data by modern_fftpack;

Access violation error happened in subroutine complex_pass_n_backward about array assignment operation of array ch1 and cc1 while I am trying to use openmp.

I'll look into these.


change capability for test tiles_scroll_perf_iphonexs__timeline_summary

We are changing the capability of tiles_scroll_perf_iphonexs__timeline_summary to mac/ios for now.
The context is that we have disabled mac/iphonexs devicelab host, and there is no iphone X device available.

Thanks for the merge @jmagman


Socratic Seminar 36

Welcome
Hello Bitcoiners! This is where we'll organize the topics of discussion for our upcoming Socratic Seminar.
Please use this issue to suggest topics that you'd like to see discussed at the seminar. To suggest a topic, simply add a new comment to this issue with the topic title as the comment's title.
As we work through organizing the topics, feel free to edit and update your comments as needed. This will help us keep everything organized and easy to follow.
To help get us started, here are some main topics of discussion that we could consider:

Bitcoin Core
Lightning Network
Scaling
Privacy
Media
Miscellaneous

Remember, this is Bitcoin only, do not post about your favorite clown-coin.
Thank you for your contributions and we look forward to a great seminar!

Covenants Support beauty contest table adds rationale column. Some bangers in there.
https://en.bitcoin.it/wiki/Covenants_support

Bitcoin Virtual Channels: Bringing Instant Settlement To Ark
https://arkdev.info/blog/bitcoin-virtual-channels/

Lark - HWI reimplementation in java
Craig Raw announcement thread

WabiSabi vulnerability fix

Excellent Mostro Protocol documentation
https://mostro.network/protocol/

Merkelize All The Things (MATT) covenant proposal
https://merkle.fun/

AJ Towns presents BLL - Basic Bitcoin Lisp Language
https://brink.dev/blog/2024/12/19/eng-call-aj-towns-bll/


chore: Remove 'coming soon' note for .nycrc file

Support for a .nycrc config file has been added.

Changes Unknown when pulling 38be920ef5a84ed4bf9c929059e63e83e070b81b on scriptdaemon:config-sources into ** on istanbuljs:master**.

@scriptdaemon great catch 👍


How to get a video's audioCodec and videoCodec?

Q
A

Bug?
no

New Feature?
no

Version Used
0.14.1

FFmpeg Version
4.2.2

OS
ubuntu 18.04

Hi,
I have created a video rotation function and it works well. However, rather than save the new video file as a mp4 file, I would like to use the original file's audioCodec and videoCodec when save the video. I couldn't find how to do it, so can anyone please help? Thanks.
My current code is:
$video->save(
                new \FFMpeg\Format\Video\X264('libmp3lame', 'libx264'),
                $filePath
            );

You can fetch the codecs like here https://github.com/PHP-FFMpeg/PHP-FFMpeg#ffprobe and then manually set them on your filter again. :)

Thank you @jens1o , I did try it but the codec_name for video and audio I got from ffprobe are 'h264' and 'mp3'. How do I map them to 'libx264' and 'libmp3lame' as in the save() function?

Ah, I was somehow not thinking right. You can copy the audio codec by supplying
$format = new FFMpeg\Format\Video\X264('copy', 'libx264'); // <- note the `copy` here. The first parameter is the audio codec, the second one is the video codec, where the X264 format class can only deal with `libx264`

$video->save($format, 'test.mp4');

However, it is not possible to copy the video codec, PHP-FFMpeg currently requires the video codec to be set indefinitely.
Could you say more about your ambitions?

Thanks a lot. My last question is, how do I know which Format class(e.g. FFMpeg\Format\Video\X264) I should use if I want to keep the original video format?

Unfortunately there is no built-in solution for that. I'd recommend building a map with the FFProbe-reported codec_name to a format class.


Support for ARM64 CPUs

Would it be possible to have releases for ARM64 (aarch64) CPUs in addition to the x86_64 releases?

CPU is highly unusable in general, and so are Metal GPUs because both lack specialized kernels

Apologies for being unclear. I'm talking about prebuilt Python wheels for arm CPUs.
Your releases only have builds for x86_64 and I couldn't figure out how to build it for ARM with the quick look I had.

Apologies for being unclear. I'm talking about prebuilt Python wheels for arm CPUs. Your releases only have builds for x86_64 and I couldn't figure out how to build it for ARM with the quick look I had.

I was able to build it for NVIDIA Jetson Orin NX. First, you build and install the casper-hansen/AutoAWQ_kernels. And next this repo wheel itself.


Change to the wording - Samoan words

Jackie has suggested changes to the following copy.
Data empowers us. “Fa’amaumauga e mafai ai ona faamalosia ai o tatou tagata Pasefika.” - Jackie suggested that this heading might work better in quotation marks, and she would like to add the apostrophes back please.

Unattributed quotes (aka "scare quotes") are prohibited by our style guide (and good taste!). We need either someone to quote as saying this, or we need to emphasise this text without including it in quote marks.

Unattributed quotes (aka "scare quotes") are prohibited by our style guide (and good taste!). We need either someone to quote as saying this, or we need to emphasise this text without including it in quote marks.

Ka pai, I will let her know. TIL "scare quotes" :)

@robisaacnz would an em dash work? I'm not sure on the grammar rules around that. So,
Data empowers us — Fa’amaumauga e mafai ai ona faamalosia ai o tatou tagata Pasefika.

An em dash indicates a continuation of the same sentence, so it's appropriate. A colon is more commonly used to indicate a successive clause of the same sentence where the subject has not changed, so,
Data empowers us — Fa’amaumauga e mafai ai ona faamalosia ai o tatou tagata Pasefika.
But I'm happy with either of these as an alternative to scare quotes.

Cool, I'll go with the latter.


controller unconfigured

Hi, i got a problem working on the UR5e,
I had done all safety steps and runnen the cartesian_force_controller succesfully on the UR5e. Now, when i do it again i want to deactivate the scaled_joint_trajectory_controller. When I command ros2 control list_controllers the following line prints:
....
scaled_joint_trajectory_controller[ur_controllers/ScaledJointTrajectoryController] unconfigured
.....

All other controller are on active or inactive.
The robot does not do anything.

Hello,
please provide output log after launching robot.launch.py using
ros2 control list_controllers .
Normally you should activate and deactivate controllers with following command:
ros2 control switch_controllers --activate cartesian_force_controller --deactivate scaled_joint_trajectory_controller
Again share your output log (ros2 control list_controllers) after switching controllers.

after launching robot.launch.py:
$ ros2 control list_controllers
cartesian_force_controller[cartesian_force_controller/CartesianForceController] inactive
joint_state_broadcaster[joint_state_broadcaster/JointStateBroadcaster] active
motion_control_handle[cartesian_controller_handles/MotionControlHandle] inactive
cartesian_compliance_controller[cartesian_compliance_controller/CartesianComplianceController] inactive
force_torque_sensor_broadcaster[force_torque_sensor_broadcaster/ForceTorqueSensorBroadcaster] active
cartesian_motion_controller[cartesian_motion_controller/CartesianMotionController] inactive
scaled_joint_trajectory_controller[ur_controllers/ScaledJointTrajectoryController] unconfigured

Then command```
$ ros2 control switch_controllers --activate cartesian_force_controller --deactivate scaled_joint_trajectory_controller
Successfully switched controllers
Then again command ros2 control list_controllers :

cartesian_force_controller[cartesian_force_controller/CartesianForceController] inactive
joint_state_broadcaster[joint_state_broadcaster/JointStateBroadcaster] active
motion_control_handle[cartesian_controller_handles/MotionControlHandle] inactive
cartesian_compliance_controller[cartesian_compliance_controller/CartesianComplianceController] inactive
force_torque_sensor_broadcaster[force_torque_sensor_broadcaster/ForceTorqueSensorBroadcaster] active
cartesian_motion_controller[cartesian_motion_controller/CartesianMotionController] inactive
scaled_joint_trajectory_controller[ur_controllers/ScaledJointTrajectoryController] unconfigured
I don't know how/why?

In the terminal from the robot.launch.py it prints this:

[ur_ros2_control_node-2] [WARN] [1705670680.683491322] [controller_manager]: Controller with name 'scaled_joint_trajectory_controller' can not be deactivated since it is not active.
[ur_ros2_control_node-2] [WARN] [1705670680.683547485] [controller_manager]: Could not deactivate controller with name 'scaled_joint_trajectory_controller'. Check above warnings for more details. Check the state of the controllers and their required interfaces using `ros2 control list_controllers -v` CLI to get more information.
[ur_ros2_control_node-2] [ERROR] [1705670680.683744807] [controller_manager]: Resource conflict for controller 'cartesian_force_controller'. Command interface 'shoulder_pan_joint/position' is already claimed.

@Daan0103
according to your first log output, the scaled_joint_trajectory_controller doesn't come up correctly. It should be in state inactive, but it's in state unconfigured. That's why switching later fails. Could you post the complete output of robot.launch.py?

@Daan0103
Based on controller_manager  output:

Resource conflict for controller 'cartesian_force_controller'. Command interface 'shoulder_pan_joint/position' is already claimed.

it seems like some previously launched processes are still keeping claimed interface. Make sure they're all shut down. Quick way, i.e. reboot your system... Then launch robot.launch.py  , ros2 control list_controllers and post log output here.

My complete output of robot.launch.py:
$ ros2 launch cartesian_controllers_universal_robots robot.launch.py  [INFO] [launch]: All log files can be found below /home/viro/.ros/log/2024-01-22-14-53-31-530638-viro-n4451-20466 [INFO] [launch]: Default logging verbosity is set to INFO [INFO] [rviz2-1]: process started with pid [20469] [INFO] [ur_ros2_control_node-2]: process started with pid [20471] [INFO] [robot_state_publisher-3]: process started with pid [20473] [INFO] [spawner-4]: process started with pid [20475] [INFO] [spawner-5]: process started with pid [20477] [INFO] [spawner-6]: process started with pid [20479] [INFO] [spawner-7]: process started with pid [20481] [INFO] [spawner-8]: process started with pid [20483] [INFO] [spawner-9]: process started with pid [20485] [INFO] [spawner-10]: process started with pid [20505] [rviz2-1] Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway. [robot_state_publisher-3] [INFO] [1705931612.347135155] [robot_state_publisher]: got segment base [robot_state_publisher-3] [INFO] [1705931612.347300559] [robot_state_publisher]: got segment base_link [robot_state_publisher-3] [INFO] [1705931612.347323853] [robot_state_publisher]: got segment base_link_inertia [robot_state_publisher-3] [INFO] [1705931612.347336756] [robot_state_publisher]: got segment flange [robot_state_publisher-3] [INFO] [1705931612.347350165] [robot_state_publisher]: got segment forearm_link [robot_state_publisher-3] [INFO] [1705931612.347361923] [robot_state_publisher]: got segment ft_frame [robot_state_publisher-3] [INFO] [1705931612.347374896] [robot_state_publisher]: got segment shoulder_link [robot_state_publisher-3] [INFO] [1705931612.347386553] [robot_state_publisher]: got segment tool0 [robot_state_publisher-3] [INFO] [1705931612.347399571] [robot_state_publisher]: got segment upper_arm_link [ur_ros2_control_node-2] [WARN] [1705931612.348105295] [controller_manager]: 'update_rate' parameter not set, using default value. [ur_ros2_control_node-2] [WARN] [1705931612.348257526] [controller_manager]: [Deprecated] Passing the robot description parameter directly to the control_manager node is deprecated. Use '~/robot_description' topic from 'robot_state_publisher' instead. [ur_ros2_control_node-2] text not specified in the tf_prefix tag [ur_ros2_control_node-2] [INFO] [1705931612.348929560] [resource_manager]: Loading hardware 'ur5e'  [ur_ros2_control_node-2] [INFO] [1705931612.352740279] [resource_manager]: Initialize hardware 'ur5e'  [ur_ros2_control_node-2] [INFO] [1705931612.352856876] [resource_manager]: Successful initialization of hardware 'ur5e' [ur_ros2_control_node-2] [INFO] [1705931612.353183070] [resource_manager]: 'configure' hardware 'ur5e'  [ur_ros2_control_node-2] [INFO] [1705931612.353204681] [resource_manager]: Successful 'configure' of hardware 'ur5e' [ur_ros2_control_node-2] [INFO] [1705931612.353253286] [resource_manager]: 'activate' hardware 'ur5e'  [ur_ros2_control_node-2] [INFO] [1705931612.353269659] [URPositionHardwareInterface]: Starting ...please wait... [ur_ros2_control_node-2] [INFO] [1705931612.353292966] [URPositionHardwareInterface]: Initializing driver... [robot_state_publisher-3] [INFO] [1705931612.355479906] [robot_state_publisher]: got segment world [robot_state_publisher-3] [INFO] [1705931612.355508096] [robot_state_publisher]: got segment wrist_1_link [robot_state_publisher-3] [INFO] [1705931612.355527214] [robot_state_publisher]: got segment wrist_2_link [robot_state_publisher-3] [INFO] [1705931612.355545459] [robot_state_publisher]: got segment wrist_3_link [ur_ros2_control_node-2] [INFO] [1705931612.360748451] [UR_Client_Library]: SCHED_FIFO OK, priority 99 [ur_ros2_control_node-2] [INFO] [1705931612.561525772] [UR_Client_Library]: Negotiated RTDE protocol version to 2. [ur_ros2_control_node-2] [INFO] [1705931612.561804524] [UR_Client_Library]: Setting up RTDE communication with frequency 500.000000 [rviz2-1] [INFO] [1705931612.889901003] [rviz2]: Stereo is NOT SUPPORTED [rviz2-1] [INFO] [1705931612.890129267] [rviz2]: OpenGl version: 4.6 (GLSL 4.6) [rviz2-1] [INFO] [1705931612.980929282] [rviz2]: Stereo is NOT SUPPORTED [ur_ros2_control_node-2] [WARN] [1705931613.568490341] [UR_Client_Library]: DEPRECATION NOTICE: Setting the keepalive count has been deprecated. Instead use the RobotReceiveTimeout, to set the timeout directly in the write commands. Please change your code to set the read timeout in the write commands directly. This keepalive count will overwrite the timeout passed to the write functions. [ur_ros2_control_node-2] [WARN] [1705931613.568517076] [UR_Client_Library]: DEPRECATION NOTICE: Setting the keepalive count has been deprecated. Instead you should set the timeout directly in the write commands. Please change your code to set the read timeout in the write commands directly. This keepalive count will overwrite the timeout passed to the write functions. [ur_ros2_control_node-2] [INFO] [1705931613.568525185] [URPositionHardwareInterface]: Calibration checksum: 'calib_12788084448423163542'. [ur_ros2_control_node-2] [ERROR] [1705931614.628958980] [URPositionHardwareInterface]: The calibration parameters of the connected robot don't match the ones from the given kinematics config file. Please be aware that this can lead to critical inaccuracies of tcp positions. Use the ur_calibration tool to extract the correct calibration from the robot and pass that into the description. See [https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver/blob/main/ur_calibration/README.md] for details. [ur_ros2_control_node-2] [INFO] [1705931614.629200335] [URPositionHardwareInterface]: System successfully started! [ur_ros2_control_node-2] [INFO] [1705931614.629249127] [resource_manager]: Successful 'activate' of hardware 'ur5e' [ur_ros2_control_node-2] [INFO] [1705931614.660964712] [UR_Client_Library]: SCHED_FIFO OK, priority 99 [ur_ros2_control_node-2] [INFO] [1705931614.794967683] [controller_manager]: Loading controller 'force_torque_sensor_broadcaster' [spawner-5] [INFO] [1705931614.814918550] [spawner_force_torque_sensor_broadcaster]: Loaded force_torque_sensor_broadcaster [ur_ros2_control_node-2] [INFO] [1705931614.816458126] [controller_manager]: Loading controller 'joint_state_broadcaster' [spawner-4] [INFO] [1705931614.837733077] [spawner_joint_state_broadcaster]: Loaded joint_state_broadcaster [ur_ros2_control_node-2] [INFO] [1705931614.840155722] [controller_manager]: Configuring controller 'joint_state_broadcaster' [ur_ros2_control_node-2] [INFO] [1705931614.840311686] [joint_state_broadcaster]: 'joints' or 'interfaces' parameter is empty. All available state interfaces will be published [ur_ros2_control_node-2] [INFO] [1705931614.846899486] [controller_manager]: Loading controller 'cartesian_motion_controller' [spawner-9] [INFO] [1705931614.874547923] [spawner_cartesian_motion_controller]: Loaded cartesian_motion_controller [spawner-4] [INFO] [1705931614.875775351] [spawner_joint_state_broadcaster]: Configured and activated joint_state_broadcaster [ur_ros2_control_node-2] [INFO] [1705931614.876585407] [controller_manager]: Configuring controller 'cartesian_motion_controller' [ur_ros2_control_node-2] [INFO] [1705931614.885786894] [cartesian_motion_controller]: Forward dynamics solver initialized [ur_ros2_control_node-2] [INFO] [1705931614.885849722] [cartesian_motion_controller]: Forward dynamics solver has control over 6 joints [ur_ros2_control_node-2] [INFO] [1705931614.900764940] [controller_manager]: Configuring controller 'force_torque_sensor_broadcaster' [ur_ros2_control_node-2] [INFO] [1705931614.904878421] [controller_manager]: Loading controller 'motion_control_handle' [spawner-10] [INFO] [1705931614.937162818] [spawner_motion_control_handle]: Loaded motion_control_handle [spawner-5] [INFO] [1705931614.937589631] [spawner_force_torque_sensor_broadcaster]: Configured and activated force_torque_sensor_broadcaster [ur_ros2_control_node-2] [INFO] [1705931614.940156300] [controller_manager]: Configuring controller 'motion_control_handle' [ur_ros2_control_node-2] [INFO] [1705931614.959646937] [controller_manager]: Loading controller 'cartesian_force_controller' [ur_ros2_control_node-2] [INFO] [1705931614.989753048] [controller_manager]: Loading controller 'cartesian_compliance_controller' [spawner-8] [INFO] [1705931614.991304688] [spawner_cartesian_force_controller]: Loaded cartesian_force_controller [ur_ros2_control_node-2] [INFO] [1705931615.018224964] [controller_manager]: Loading controller 'scaled_joint_trajectory_controller' [spawner-7] [INFO] [1705931615.020710231] [spawner_cartesian_compliance_controller]: Loaded cartesian_compliance_controller [ur_ros2_control_node-2] [WARN] [1705931615.054585318] [scaled_joint_trajectory_controller]: [Deprecated]: "allow_nonzero_velocity_at_trajectory_end" is set to true. The default behavior will change to false. [ur_ros2_control_node-2] [INFO] [1705931615.055250403] [controller_manager]: Configuring controller 'cartesian_compliance_controller' [spawner-6] [INFO] [1705931615.056671667] [spawner_scaled_joint_trajectory_controller]: Loaded scaled_joint_trajectory_controller [ur_ros2_control_node-2] [INFO] [1705931615.062762936] [cartesian_compliance_controller]: Forward dynamics solver initialized [ur_ros2_control_node-2] [INFO] [1705931615.062813600] [cartesian_compliance_controller]: Forward dynamics solver has control over 6 joints [ur_ros2_control_node-2] [INFO] [1705931615.084603446] [controller_manager]: Configuring controller 'cartesian_force_controller' [ur_ros2_control_node-2] [INFO] [1705931615.091804886] [cartesian_force_controller]: Forward dynamics solver initialized [ur_ros2_control_node-2] [INFO] [1705931615.091861148] [cartesian_force_controller]: Forward dynamics solver has control over 6 joints [ur_ros2_control_node-2] [INFO] [1705931615.097940198] [controller_manager]: Configuring controller 'scaled_joint_trajectory_controller' [ur_ros2_control_node-2] [INFO] [1705931615.098806805] [scaled_joint_trajectory_controller]: No specific joint names are used for command interfaces. Using 'joints' parameter. [ur_ros2_control_node-2] [INFO] [1705931615.098873684] [scaled_joint_trajectory_controller]: Command interfaces are [position] and state interfaces are [position velocity]. [ur_ros2_control_node-2] [INFO] [1705931615.099386495] [scaled_joint_trajectory_controller]: Using 'splines' interpolation method. [ur_ros2_control_node-2] [INFO] [1705931615.101857085] [scaled_joint_trajectory_controller]: Controller state will be published at 100.00 Hz. [INFO] [spawner-4]: process has finished cleanly [pid 20475] [ur_ros2_control_node-2] [INFO] [1705931615.107812378] [scaled_joint_trajectory_controller]: Action status changes will be monitored at 20.00 Hz. [INFO] [spawner-9]: process has finished cleanly [pid 20485] [INFO] [spawner-5]: process has finished cleanly [pid 20477] [INFO] [spawner-10]: process has finished cleanly [pid 20505] [INFO] [spawner-7]: process has finished cleanly [pid 20481] [ERROR] [ur_ros2_control_node-2]: process has died [pid 20471, exit code -11, cmd '/home/viro/ros2_ws/install/ur_robot_driver/lib/ur_robot_driver/ur_ros2_control_node --ros-args --params-file /tmp/launch_params_sdc3k4mq --params-file /home/viro/ros2_ws/install/cartesian_controllers_universal_robots/share/cartesian_controllers_universal_robots/config/controller_manager.yaml -r motion_control_handle/target_frame:=target_frame -r cartesian_motion_controller/target_frame:=target_frame -r cartesian_compliance_controller/target_frame:=target_frame -r cartesian_force_controller/target_wrench:=target_wrench -r cartesian_compliance_controller/target_wrench:=target_wrench -r cartesian_force_controller/ft_sensor_wrench:=ft_sensor_wrench -r cartesian_compliance_controller/ft_sensor_wrench:=ft_sensor_wrench -r force_torque_sensor_broadcaster/wrench:=ft_sensor_wrench']. [INFO] [spawner-8]: process has finished cleanly [pid 20483]

After i hit sudo reboot and try again:
I did launch it again and in another terminal : $ ros2 control list_controllers
This is the output:
cartesian_force_controller[cartesian_force_controller/CartesianForceController] inactive
joint_state_broadcaster[joint_state_broadcaster/JointStateBroadcaster] active
scaled_joint_trajectory_controller[ur_controllers/ScaledJointTrajectoryController] unconfigured
cartesian_motion_controller[cartesian_motion_controller/CartesianMotionController] inactive
force_torque_sensor_broadcaster[force_torque_sensor_broadcaster/ForceTorqueSensorBroadcaster] active
motion_control_handle[cartesian_controller_handles/MotionControlHandle] inactive
cartesian_compliance_controller[cartesian_compliance_controller/CartesianComplianceController] inactive

Based on your robot.launch.py output your ur_ros2_control_node crashed.
That node belongs to ur_driver and probably something is wrongly configured or missing.
First I would confirm if ros2 control node of ur_driver is working alone with following call:
ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur5e robot_ip:=__robot_ip__ launch_rviz:=false
Before calling it, terminate any ros launch script that is active. Post output. I expect it to be similar to current outputs, but it will narrow down the search for a cause.

this gives the following output:
$ ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur5e robot_ip:=<IP_ADDRESS> launch_rviz:=true
[INFO] [launch]: All log files can be found below /home/viro/.ros/log/2024-01-22-16-40-04-126711-viro-n4451-7045
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [dashboard_client-2]: process started with pid [7050]
[INFO] [controller_stopper_node-3]: process started with pid [7052]
[INFO] [ur_ros2_control_node-1]: process started with pid [7048]
[INFO] [robot_state_publisher-4]: process started with pid [7054]
[INFO] [rviz2-5]: process started with pid [7056]
[INFO] [spawner-6]: process started with pid [7058]
[INFO] [spawner-7]: process started with pid [7060]
[INFO] [spawner-8]: process started with pid [7062]
[INFO] [spawner-9]: process started with pid [7064]
[INFO] [spawner-10]: process started with pid [7083]
[INFO] [spawner-11]: process started with pid [7085]
[rviz2-5] Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
[controller_stopper_node-3] [INFO] [1705938005.021553535] [Controller stopper]: Waiting for switch controller service to come up on controller_manager/switch_controller
[robot_state_publisher-4] [INFO] [1705938005.079040388] [robot_state_publisher]: got segment base
[robot_state_publisher-4] [INFO] [1705938005.079212859] [robot_state_publisher]: got segment base_link
[robot_state_publisher-4] [INFO] [1705938005.079236872] [robot_state_publisher]: got segment base_link_inertia
[robot_state_publisher-4] [INFO] [1705938005.079251991] [robot_state_publisher]: got segment flange
[robot_state_publisher-4] [INFO] [1705938005.079266031] [robot_state_publisher]: got segment forearm_link
[robot_state_publisher-4] [INFO] [1705938005.079278969] [robot_state_publisher]: got segment ft_frame
[robot_state_publisher-4] [INFO] [1705938005.079291603] [robot_state_publisher]: got segment shoulder_link
[robot_state_publisher-4] [INFO] [1705938005.079304897] [robot_state_publisher]: got segment tool0
[robot_state_publisher-4] [INFO] [1705938005.079318650] [robot_state_publisher]: got segment upper_arm_link
[robot_state_publisher-4] [INFO] [1705938005.079332211] [robot_state_publisher]: got segment world
[robot_state_publisher-4] [INFO] [1705938005.079345750] [robot_state_publisher]: got segment wrist_1_link
[robot_state_publisher-4] [INFO] [1705938005.079358645] [robot_state_publisher]: got segment wrist_2_link
[robot_state_publisher-4] [INFO] [1705938005.079371828] [robot_state_publisher]: got segment wrist_3_link
[dashboard_client-2] [INFO] [1705938005.083846681] [UR_Client_Library]: Connected: Universal Robots Dashboard Server
[dashboard_client-2]
[ur_ros2_control_node-1] [WARN] [1705938005.107657506] [controller_manager]: [Deprecated] Passing the robot description parameter directly to the control_manager node is deprecated. Use '~/robot_description' topic from 'robot_state_publisher' instead.
[ur_ros2_control_node-1] text not specified in the tf_prefix tag
[ur_ros2_control_node-1] [INFO] [1705938005.108759225] [resource_manager]: Loading hardware 'ur5e'
[ur_ros2_control_node-1] [INFO] [1705938005.113194472] [resource_manager]: Initialize hardware 'ur5e'
[ur_ros2_control_node-1] [INFO] [1705938005.113342902] [resource_manager]: Successful initialization of hardware 'ur5e'
[ur_ros2_control_node-1] [INFO] [1705938005.113671264] [resource_manager]: 'configure' hardware 'ur5e'
[ur_ros2_control_node-1] [INFO] [1705938005.113703802] [resource_manager]: Successful 'configure' of hardware 'ur5e'
[ur_ros2_control_node-1] [INFO] [1705938005.113762320] [resource_manager]: 'activate' hardware 'ur5e'
[ur_ros2_control_node-1] [INFO] [1705938005.113778934] [URPositionHardwareInterface]: Starting ...please wait...
[ur_ros2_control_node-1] [INFO] [1705938005.113803765] [URPositionHardwareInterface]: Initializing driver...
[ur_ros2_control_node-1] [INFO] [1705938005.121709952] [UR_Client_Library]: SCHED_FIFO OK, priority 99
[ur_ros2_control_node-1] [INFO] [1705938005.207226899] [UR_Client_Library]: Negotiated RTDE protocol version to 2.
[ur_ros2_control_node-1] [INFO] [1705938005.207523689] [UR_Client_Library]: Setting up RTDE communication with frequency 500.000000
[rviz2-5] [INFO] [1705938005.558900848] [rviz2]: Stereo is NOT SUPPORTED
[rviz2-5] [INFO] [1705938005.559163766] [rviz2]: OpenGl version: 4.6 (GLSL 4.6)
[rviz2-5] [INFO] [1705938005.600629257] [rviz2]: Stereo is NOT SUPPORTED
[ur_ros2_control_node-1] [WARN] [1705938006.232611083] [UR_Client_Library]: DEPRECATION NOTICE: Setting the keepalive count has been deprecated. Instead use the RobotReceiveTimeout, to set the timeout directly in the write commands. Please change your code to set the read timeout in the write commands directly. This keepalive count will overwrite the timeout passed to the write functions.
[ur_ros2_control_node-1] [WARN] [1705938006.232682055] [UR_Client_Library]: DEPRECATION NOTICE: Setting the keepalive count has been deprecated. Instead you should set the timeout directly in the write commands. Please change your code to set the read timeout in the write commands directly. This keepalive count will overwrite the timeout passed to the write functions.
[ur_ros2_control_node-1] [INFO] [1705938006.232694312] [URPositionHardwareInterface]: Calibration checksum: 'calib_12788084448423163542'.
[ur_ros2_control_node-1] [ERROR] [1705938007.260701599] [URPositionHardwareInterface]: The calibration parameters of the connected robot don't match the ones from the given kinematics config file. Please be aware that this can lead to critical inaccuracies of tcp positions. Use the ur_calibration tool to extract the correct calibration from the robot and pass that into the description. See [https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver/blob/main/ur_calibration/README.md] for details.
[ur_ros2_control_node-1] [INFO] [1705938007.260847734] [URPositionHardwareInterface]: System successfully started!
[ur_ros2_control_node-1] [INFO] [1705938007.260918313] [resource_manager]: Successful 'activate' of hardware 'ur5e'
[controller_stopper_node-3] [INFO] [1705938007.270762506] [Controller stopper]: Service available
[controller_stopper_node-3] [INFO] [1705938007.270804802] [Controller stopper]: Waiting for list controllers service to come up on controller_manager/list_controllers
[controller_stopper_node-3] [INFO] [1705938007.270836616] [Controller stopper]: Service available
[ur_ros2_control_node-1] [INFO] [1705938007.277432257] [UR_Client_Library]: SCHED_FIFO OK, priority 99
[ur_ros2_control_node-1] [INFO] [1705938007.394574952] [controller_manager]: Loading controller 'forward_position_controller'
[spawner-11] [INFO] [1705938007.426351122] [spawner_forward_position_controller]: Loaded forward_position_controller
[ur_ros2_control_node-1] [INFO] [1705938007.431229558] [controller_manager]: Configuring controller 'forward_position_controller'
[ur_ros2_control_node-1] [INFO] [1705938007.435252154] [forward_position_controller]: configure successful
[ur_ros2_control_node-1] [INFO] [1705938007.436958884] [controller_manager]: Loading controller 'joint_state_broadcaster'
[ur_ros2_control_node-1] [INFO] [1705938007.462284646] [controller_manager]: Loading controller 'force_torque_sensor_broadcaster'
[spawner-7] [INFO] [1705938007.463006740] [spawner_joint_state_broadcaster]: Loaded joint_state_broadcaster
[ur_ros2_control_node-1] [INFO] [1705938007.482513368] [controller_manager]: Loading controller 'speed_scaling_state_broadcaster'
[spawner-10] [INFO] [1705938007.483619264] [spawner_force_torque_sensor_broadcaster]: Loaded force_torque_sensor_broadcaster
[ur_ros2_control_node-1] [INFO] [1705938007.509608505] [speed_scaling_state_broadcaster]: Loading UR SpeedScalingStateBroadcaster with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.510524157] [controller_manager]: Loading controller 'io_and_status_controller'
[spawner-9] [INFO] [1705938007.518247044] [spawner_speed_scaling_state_broadcaster]: Loaded speed_scaling_state_broadcaster
[ur_ros2_control_node-1] [INFO] [1705938007.535977882] [controller_manager]: Configuring controller 'joint_state_broadcaster'
[ur_ros2_control_node-1] [INFO] [1705938007.536109273] [joint_state_broadcaster]: 'joints' or 'interfaces' parameter is empty. All available state interfaces will be published
[spawner-8] [INFO] [1705938007.536438255] [spawner_io_and_status_controller]: Loaded io_and_status_controller
[ur_ros2_control_node-1] [INFO] [1705938007.548283388] [controller_manager]: Loading controller 'scaled_joint_trajectory_controller'
[ur_ros2_control_node-1] [WARN] [1705938007.580045406] [scaled_joint_trajectory_controller]: [Deprecated]: "allow_nonzero_velocity_at_trajectory_end" is set to true. The default behavior will change to false.
[ur_ros2_control_node-1] [INFO] [1705938007.581195749] [controller_manager]: Configuring controller 'force_torque_sensor_broadcaster'
[spawner-6] [INFO] [1705938007.583262509] [spawner_scaled_joint_trajectory_controller]: Loaded scaled_joint_trajectory_controller
[ur_ros2_control_node-1] [INFO] [1705938007.586057080] [controller_manager]: Configuring controller 'speed_scaling_state_broadcaster'
[ur_ros2_control_node-1] [INFO] [1705938007.586280740] [speed_scaling_state_broadcaster]: Publisher rate set to : 100.0 Hz
[ur_ros2_control_node-1] [INFO] [1705938007.593818158] [controller_manager]: Configuring controller 'io_and_status_controller'
[ur_ros2_control_node-1] [INFO] [1705938007.594038601] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.594201523] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.596537601] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.596919950] [controller_manager]: Configuring controller 'scaled_joint_trajectory_controller'
[ur_ros2_control_node-1] [INFO] [1705938007.597193923] [scaled_joint_trajectory_controller]: No specific joint names are used for command interfaces. Using 'joints' parameter.
[ur_ros2_control_node-1] [INFO] [1705938007.597256148] [scaled_joint_trajectory_controller]: Command interfaces are [position] and state interfaces are [position velocity].
[ur_ros2_control_node-1] [INFO] [1705938007.597285796] [scaled_joint_trajectory_controller]: Using 'splines' interpolation method.
[ur_ros2_control_node-1] [INFO] [1705938007.599221379] [scaled_joint_trajectory_controller]: Controller state will be published at 100.00 Hz.
[ur_ros2_control_node-1] [INFO] [1705938007.603242923] [scaled_joint_trajectory_controller]: Action status changes will be monitored at 20.00 Hz.
[ur_ros2_control_node-1] [INFO] [1705938007.615141152] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.615354569] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.615576759] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.618235328] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.620324715] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[spawner-7] [INFO] [1705938007.621859259] [spawner_joint_state_broadcaster]: Configured and activated joint_state_broadcaster
[ur_ros2_control_node-1] [INFO] [1705938007.622790300] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.624051396] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.625259796] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.626161520] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.626476408] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[spawner-10] [INFO] [1705938007.625937593] [spawner_force_torque_sensor_broadcaster]: Configured and activated force_torque_sensor_broadcaster
[ur_ros2_control_node-1] [INFO] [1705938007.626587757] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.626784719] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[INFO] [spawner-11]: process has finished cleanly [pid 7085]
[ur_ros2_control_node-1] [INFO] [1705938007.662267357] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[ur_ros2_control_node-1] [INFO] [1705938007.663265975] [io_and_status_controller]: Configure UR gpio controller with tf_prefix:
[spawner-8] [INFO] [1705938007.664714471] [spawner_io_and_status_controller]: Configured and activated io_and_status_controller
[ERROR] [ur_ros2_control_node-1]: process has died [pid 7048, exit code -11, cmd '/home/viro/ros2_ws/install/ur_robot_driver/lib/ur_robot_driver/ur_ros2_control_node --ros-args --params-file /tmp/launch_params_aenxvt0n --params-file /home/viro/ros2_ws/install/ur_robot_driver/share/ur_robot_driver/config/ur5e_update_rate.yaml --params-file /home/viro/ros2_ws/install/ur_robot_driver/share/ur_robot_driver/config/ur_controllers.yaml'].
[INFO] [spawner-7]: process has finished cleanly [pid 7060]
[INFO] [spawner-10]: process has finished cleanly [pid 7083]
[INFO] [spawner-8]: process has finished cleanly [pid 7062]

The line:
[ERROR] [ur_ros2_control_node-1]: process has died [pid 7048, exit code -11, cmd '/home/viro/ros2_ws/install/ur_robot_driver/lib/ur_robot_driver/ur_ros2_control_node --ros-args --params-file /tmp/launch_params_aenxvt0n --params-file /home/viro/ros2_ws/install/ur_robot_driver/share/ur_robot_driver/config/ur5e_update_rate.yaml --params-file /home/viro/ros2_ws/install/ur_robot_driver/share/ur_robot_driver/config/ur_controllers.yaml'].
indicates the problem with ros2 control part of ur_driver. Seems like some parameters are incorrect or loaded wrongly.
Without too much digging I would reinstall the driver. Preferably build& install from source:
https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver
You may try it. Unless some parameters from above are modified intentionally by you for some reason.

Hi @pietrzakmat
I deleted the ur_driver and installed it again from source. With a clean build, the output is as follows:
ros2 control list_controllers
force_torque_sensor_broadcaster[force_torque_sensor_broadcaster/ForceTorqueSensorBroadcaster] active
scaled_joint_trajectory_controller[ur_controllers/ScaledJointTrajectoryController] active
joint_state_broadcaster[joint_state_broadcaster/JointStateBroadcaster] active
cartesian_compliance_controller[cartesian_compliance_controller/CartesianComplianceController] inactive
cartesian_force_controller[cartesian_force_controller/CartesianForceController] inactive
motion_control_handle[cartesian_controller_handles/MotionControlHandle] inactive
cartesian_motion_controller[cartesian_motion_controller/CartesianMotionController] inactive
The problem was somewhere inside this package..
Thanks for your help! Preciate it.

@Daan0103,
I'm glad to hear that it works for you now.
As I do not have permissions for the repo, please close the issue.


Unrandomize enemy shooting

Unrandomized enemy shooting by using an array of random numbers that are seeded the same each time (in function reset), and the row/column of the enemy shooting is determined by this random array (in function make_enemies_shoot).

Unrelated, but I auto-formatted the file to convert all tabs to spaces to get rid of some annoying issues with my interpreter. Hopefully this shouldn't affect anyone, and should be able to be safely merged in.

resolves #12

One issue we might see is that since I used a seed value in reset it will affect our random agent's actions, and any other situation where people use random. If needed we can store the random numbers in a file to prevent seeding in the project.

I added in a flag (-u) which will turn on the un-randomized enemy shooting. If the flag is not specified in the args then the default is off (enemy shots will be random).


Utilize install referrer API over BroadcastReceiver.

Description
Google Play is deprecating the install_referrer intent,
they recommend switching to the new Play Install Referrer library
I've not made any contributions to open source repos yet, and
I'm not super aware of the behavior of the install_referrer intent nor the new library, so
comments/notes/tips/hints are all gold 👍
Fixed issue #909
Compatibility

OS
Implemented

iOS
❌

Android
✅

Windows
❌

Checklist

[X] I have tested this on a device/simulator for each compatible OS
[ ] I added the documentation in README.md
[X] I mentioned this change in CHANGELOG.md
[ ] I updated the typings files (privateTypes.ts, types.ts)
[ ] I added a sample use of the API (example/App.js)

Well etiquette for PRs in this repo is "do your best", but most importantly "try something", so you're nailing it :-).
I had one suggestion above, and I have a general question which is: are there cases where this API is not available? As in, should we maintain both implementations for now? I want to make sure we don't break existing installs...

I had one suggestion above, and I have a general question which is: are there cases where this API is not available? As in, should we maintain both implementations for now? I want to make sure we don't break existing installs...

That's probably a good concern to have, looking around the install referrer library documentation I'm not finding much about whether or not the new library is universally supported.
Keeping this logic in onReceive might prepare for either possibility.

superceded by #947


How do I select a FIPS compatible cryptographic algorithm for a key vault managed storage account

When access a StorageAccount blob storage via a CloudBlobClient I get the following exception
Microsoft.WindowsAzure.Storage.StorageException: Exception has been thrown by the target of an invocation. ---> System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.
I do not see a way for a client select the V1MD5 algorithm (StorageAccount.V1MD5) from a key vault managed storage account, since the StorageAccounts are not directly accessible - instead there are StorageAccountBundles. Any suggestions.
I'm using Microsoft.Azure.KeyVault 3.0.3

Thank you for opening this issue! We are routing it to the appropriate team for follow up.
CC: @schaabs

@prashanthyv could you take a look at this?

Any thoughts on this?

@RandalliLama could you please look into this?

Anyone? Anyone?

Using MD5 on the client will cause Windows crypto APIs (Crypto and CNG) to err. FIPS compliance would have to be disabled on the host, which is not recommended. So if selecting MD5, which is expected. But I am a bit confused if you're trying to select MD5 (not FIPS-compliant), saying there's no way to select anything else. If this is still a problem, could you clarify?
Are you trying to manage rotation keys via storage, or encrypt blobs for storate? Our newer libraries (Azure.*) are recommended and we have a feature launching today that would be easier and better to use (documentation coming soon).

If you're doing this to work around Storage not supporting AAD, Storage does now support AAD and it's recommended you use AAD and Managed Identity. This is much simpler in Azure.* packages, and service documentation is available at https://docs.microsoft.com/en-us/azure/storage/common/storage-auth-aad. Please review this and let us know if this works better for you.

Closing with no response from the customer. If we get the information requested, we can reopen for further investigation.

Closing with no response from the customer. If we get the information requested, we can reopen for further investigation.

Sorry, by the time you had looked at this I had moved to another job :-)


Silent Hunter 2

The game starts, the mouse works without problems, but after starting the mission, the game settles at 2fps, if I try to record the game with the amd Record & Stream, the fps rises to 25fps maybe 30fps. Tested with GoG and original version.
Recorded with the amd Record & Stream
https://github.com/user-attachments/assets/e01135c3-c4ed-49a3-a3b8-256349bcb86c

Works fine for me after using SupportedDepthFormats=16 to avoid a crash at startup.
Did you add DDrawCompat to the Sim directory as well? The missions themselves use a separate executable (Sim.exe) there. It won't be hooked unless you put ddraw.dll there also.

Works fine for me after using SupportedDepthFormats=16 to avoid a crash at startup.
Did you add DDrawCompat to the Sim directory as well? The missions themselves use a separate executable (Sim.exe) there. It won't be hooked unless you put ddraw.dll there also.

I hadn't really noticed the executable in the other folder! Basically, the "ddraw.dll" dll must be in both folders
"C:\Silent Hunter II\Shell"
AND
"C:\Silent Hunter II\Sim"
Solved!


Using data-navigo attribute on a website without a server leads to absolute file path beeing used as location

Hey :)
I'm really sorry, that the content of this Issue was just 'Hey :)' in a previous version. I accidentally send this request hitting 'Ctrl + Enter' and then left for lunch before I was able to finish writing this Issue.
Context:
I want to use Navigo for an offline website, more precise: A documentation for a tool I'm building. The documentation will be shipped in the code for the tool. So when someone needs help with the tool, one only has to open 'file:///var/users-project/vendor/the-tool/documentation/index.html' in his browser.
Steps to reproduce:
I created the index.html  which contains links of the form:
Getting Started

and defined the router like this:
var router = new Navigo(null, true, '#');
router.on({
    ':article': function (params) {
        var article = params.arcticle;
        //Here I want to replace the content of the body with the content of the file  '{{ article }}.html'
    }
}).resolve();

By doing this, I just have to add new article-html-files and links to them, but don't have to touch the router configuration when adding an article to the documentation.
When I now open the page in a browser with the link file:///var/the-tool/documentation/index.html and click on the Getting Started link, the URL will be file:///var/the-tool/documentation/index.html#/var/the-tool/documentation/getting-started instead of expected file:///var/the-tool/documentation/index.html#overview/getting-started.
Also the article variable gets the value getting-started instead of expected overview/getting-started.
Possible fix
Without having an overview of the inner workings of Navigo. I suggest to change the code from
// ...
Navigo.prototype = {
    //...
    updatePageLinks: function updatePageLinks() {
        // ...
        this._findLinks().forEach(function (link) {
            // ...
            var location = link.pathname;
// ...

to
// ...
Navigo.prototype = {
    //...
    updatePageLinks: function updatePageLinks() {
        // ...
        this._findLinks().forEach(function (link) {
            // ...
            var location = link.getAttribute('href');
// ...

This way the url successfully will be changed to file:///var/the-tool/documentation/index.html#overview/getting-started.
But, the article variable still has getting-started instead of expected overview/getting-started as value. I currently don't know how to fix that.
Am I using Navigo incorrectly or is this a valid bug, that (when fixed) would not break any existing code, that uses Navigo?
Thanks :)

Sorry, what you mean without a server? If Navigo works in a mode where we use the History API then you need to make some back-end changes to get the things working.

I updated my question and again: I'm sorry, that I submitted this issue before writing the content. I am not sure if you will be notified about the update, but now you will definitely.

Okay, when I change the router configuration to
var router = new Navigo(null, true, '#');

router.on(/(.*)/, function (article) {
    console.log('Article is: ' + article);
});

router.resolve();

and apply the mentioned fix, then Article is: #overcview/getting-started gets logged. I can work with that.

@JonasRudolph I'll expose that reading of the URL as a api method. It was before using getAttribute('href') but we changed it to .pathname so we fix another bug. So in order to satisfy the other issue I'll keep pathname as default but will give an option to use getAttribute.

4.7.0 released. The router now contains a public methodgetLinkPath. You may overwrite it like so:
router.getLinkPath = function (link) {
  return link.getAttribute('href');
};

Here's a test case for reference https://github.com/krasimir/navigo/blob/master/test/spec/InBrowser.spec.js#L355-L379
Let me know if it works as expected.

Wow, that was fast!
I really like your usage of the strategy pattern here :)
I had a look at the implementation and the test - And I don't know why it would not work as expected.
Thank you really much, Krasimir, for taking the time to resolve this issue!


[5085] Clicking through to a plugin/widget doesn't work in Expreience Builder when pressing z

https://github.com/craftercms/craftercms/issues/5085

Please close in favour of https://github.com/craftercms/youtube-plugin/pull/2


(Feature Request) Add MacOS support

I love to play vanilla and future wotlk servers. There is no way to play on m1 chips now.
https://github.com/WowLegacyCore/HermesProxy/issues/78#issuecomment-1200156900
with arctium apple slicon devices can play wow natively

I love to play vanilla and future wotlk servers. There is no way to play on m1 chips now.
WowLegacyCore/HermesProxy#78 (comment)
with arctium apple slicon devices can play wow natively

With the static auth seed being a thing now I might be able to push my macOS launcher very soon I think.
It's basically finished but it was for x86 macOS only. I'm getting my new Mac book next week probably so I'll most likely finish those

that would be outstanding! :)

Im so glad to hear that !!! Thank you for all

With the static auth seed

Where can I download the static auth seed Windows build?

Any updates on this @Fabi ?

Any updates on this @Fabi ?

I currently focus on macOS ARM support but there are a few new unexpected issues

@Fabi
Where can I download the static auth seed Windows build?

how can we help ??
came here after the hermes... i don't want to miss epic overlook start :D

p.s guys,
have you managed to run hermes on macOS, the only way I see is to run it in virtual machine.

p.s guys,
have you managed to run hermes on macOS, the only way I see is to run it in virtual machine.

Thats not mean running on macos btw…

I love to play vanilla and future wotlk servers. There is no way to play on m1 chips now.
WowLegacyCore/HermesProxy#78 (comment)
with arctium apple slicon devices can play wow natively

With the static auth seed being a thing now I might be able to push my macOS launcher very soon I think.
It's basically finished but it was for x86 macOS only. I'm getting my new Mac book next week (still waiting...) probably so I'll most likely finish those

I need it for my old mac (10.15), can you provide a mac x86 version if possible? thank you very much!

Any updates on apple silicon support?

Any updates for the mac os version? especially x86 version

Any updates for the mac os version? especially x86 version

It is VERY unlikely that x86 support for macOS will ever gets added. ARM support is kind of done. If there is not a big difference I'll do x86 too.

X86 release will be great !!!
I try to open your project in Mac Visual studio , it shows an error "need .net 7"
so I download and install it
open again , it shows this version not support
WTF Miscro$oft

It is VERY unlikely that x86 support for macOS will ever gets added. ARM support is kind of done. If there is not a big difference I'll do x86 too.

Appreciate the awesome work that you do! Do you have any indication when the ARM version is released / open for testing? :)

Wating for m1 mac version too. you are awsome!

One more vote for Mac Apple Silicon support!
This could be huge as it would allow us to still play Vanilla WoW on modern M1/M2 Macs.

Wating for X86  Mac version too, @Fabi you are awsome!

Any updates for the mac os version? especially x86 version

It is VERY unlikely that x86 support for macOS will ever gets added. ARM support is kind of done. If there is not a big difference I'll do x86 too.

Hello Fabi, any update on the ARM support? Keep up the good work!

If anyone has tried to launch the Windows version via the new mac games toolkit (or its GUI Whisky), just know that it doesn't work. The arctium launcher terminal window opens correctly bust jut loops in "Starting WoW client..."

If anyone has tried to launch the Windows version via the new mac games toolkit (or its GUI Whisky), just know that it doesn't work. The arctium launcher terminal window opens correctly bust jut loops in "Starting WoW client..."

Well we need apple silicon native.

If anyone has tried to launch the Windows version via the new mac games toolkit (or its GUI Whisky), just know that it doesn't work. The arctium launcher terminal window opens correctly bust jut loops in "Starting WoW client..."

Well we need apple silicon native.

Indeed but I thought it was worth mentionning since relevant to the topic. Also, even the ARM-Mac OS version of WoW classic currently doesn't work on Mac OS Sonoma beta.

If anyone has tried to launch the Windows version via the new mac games toolkit (or its GUI Whisky), just know that it doesn't work. The arctium launcher terminal window opens correctly bust jut loops in "Starting WoW client..."

Well we need apple silicon native.

Indeed but I thought it was worth mentionning since relevant to the topic. Also, even the ARM-Mac OS version of WoW classic currently doesn't work on Mac OS Sonoma beta.

(OOT) oh really? Heavnt tried sonoma beta yet. Thats shame. But still classic era live blizz will update game

Any native news?

I hope for an early update for the Mac client. Thank you, thank you.

Any hope?

For anyone still looking for a solution, https://github.com/0blu/WinterspringLauncher supports Apple Silicone on macOS.
I haven't done extensive testing yet (nor do I have prior experience with HermesProxy to know which potential issues to expect), but it seems to work just fine at first glance.
Note the usage instructions in the latest release, at the time of writing (https://github.com/0blu/WinterspringLauncher/releases/tag/1.5.0) you have to launch using WinterspringLauncherTerminal.
Once the client automatically starts for the first time after the downloading it, close it.
Then, simply change the value for Realmlist in Users/<your-user>/WinterspringLauncher/winterspring-launcher-config.json from logon.everlook.org to your desired server address. Do the same for <add key="ServerAddress" value="logon.everlook.org" /> in Users/<your-user>/WinterspringLauncher/hermes-proxy/HermesProxy.config. This should allow you to connect to any VMaNGOS or CMaNGOS server you want.

WinterspringLauncher doesn't seem to support latest build of wow dragonflight. It always try to download 1.14 client.

WinterspringLauncher doesn't seem to support latest build of wow dragonflight. It always try to download 1.14 client. Also, I looked into his code, macOS doesn't support client patching:

When I'm finally done you will have a launcher that also patches the wow binary and launches it then because that is easier. but the stuff I have is not fully ready yet and might be closed source for mac

https://github.com/Arctium/WoW-Launcher/commit/3deaa3f50b95ae918ba49ca2a4d9a895247e67f7


Federation: Support federated ingress outside of GCP

 Issue by quinton-hoole
Friday Sep 01, 2017 at 16:38 GMT
Originally opened as https://github.com/kubernetes/kubernetes/issues/51806

/kind feature
Splitting off the subthread in https://github.com/kubernetes/kubernetes/issues/39989#issuecomment-305356470
This looks like it might have just got easier on AWS and cross-cloud:
New – Application Load Balancing via IP Address to AWS & On-Premises Resources
I haven't gone through all the details yet but this seems like it might form a good base for cross-cloud load balancing.  As usual, the devil will be in the details.

cc @quinton-hoole


FLEX-2915 ~ Removes NewOrganisationIdentification

Same change as merged before. The initial merge was reverted, because the related pull requests couldn't be merged yet.

All is well.


Translations / Updater

Hi! is it possible to add the updater outside of the program? If you use the program without internet access, the black cmd window appears and freezes there...until after a moment a window appears saying that it found a new update :S
And another thing...I would like to translate the program into Spanish, how can I do it?

About the updater,I can make it stop if it id unable to get the file required for the check,about the translation it's possible but would need a big overhaul on the way im doing things,but i think its manageable

Maybe an option to disable checking for updates at startup? And regarding the translation... if it is not too much to ask, could you create a translation system with its resource file to edit manually?... As soon as it is ready, I will proceed with the translation immediately....
Thanks in advance...


Standardized folders for logos and badges

Addressing a Problem?
When making a plot, the default approach is to use the Ouranos logo when figanos.matplotlib.utils.plot_logo() is called.
This behaviour is a bit odd, considering that this project is licensed under the Apache v2.0 License, specifically because we don't want to give a license for people to use our logos or create products that have our endorsements. In the event that someone not from Ouranos wants to use figanos and forgets to manually set the call signature, they'll have infringed on our software license.
Potential Solution
Using the platformdirs library, we can generate a config folder in the user's $HOME directory that, when figanos.matplotlib.utils.plot_logo() is called, grabs a file that adheres to the regex .+logo.png. This becomes the new default logo image whenever called.
This library would remove the Ouranos logo from the source code, and we would simply need to add the ouranos-logo.png to our config folders.
The platformdirs library is already installed by default for users of and projects based on xclim as of v0.45.0.
Additional context
https://github.com/platformdirs/platformdirs
Contribution

[X] I would be willing/able to open a Pull Request to contribute this feature.

I don't like to force people to have the logo on their computer... This is a library specifically made to create Ouranos (not just general climate) figures, it feels weird to not provide the logo.. maybe we change the license ?

The license is perfect (or as best as we can ask) for our use case and for adhering to a free and open source approach; My gripe is mainly that we package the logos as part of the data in the installed package.
How would you feel about keeping the Ouranos logos in the repository, but they aren't installed by default. Then we could simply make a tiny helper function (install_ouranos_logos()) that collects those logos and places them in the proper folder? That way, the Ouranos logos are only shared if a user explicitly demands them.

"That way, the Ouranos logos are only shared if a user explicitly demands them."
I would prefer "the Ouranos logos are only shared if a user is allowed to use them."
Like staff...

https://opensource.stackexchange.com/questions/500/does-being-open-sourced-mean-others-can-use-my-logo
Est-ce que le logo Ouranos est trademark ? Voir réponse de Shane Curcuru.

Je veux juste que ça reste le plus simple possible pour les usagers haha

@cothel
As of right now, only Ouranos employees are allowed to use them. The Apache v2.0 Licence is very clear that using the library doesn't entitle users to put our logos on their derived products (or modify our logo, or pretend to be Ouranos, etc.). My gripe (and it really is a gripe) is that we make it very easy for anyone to accidentally commit a licensing violation.
My proposal here is to add a function that is effectively the equivalent of an "Are you allowed to use the Ouranos logo?" check. They run the function once, it downloads the image into their XDG_HOME_CONFIG and that's all.
(exaggeration for fun) Having the logo behind a VPN and firewall, on a protected network drive, requiring multifactor authentication, two people manually turning keys in unison, and an active employee ID, etc., is not what I have in mind.

If its simple as "Are you allowed to use the Ouranos logo" I think it would be alright for future users.


Recommendations around fencing / STONITH

We are experimenting with Orchestrator and the GitHub-style failover strategies (HAproxy + consul + consul-template) and so far it is working great. Thank you for making this great piece of software, and for describing your failover strategies in such great detail.
I've read various posts and questions around how to fence off a failed master/source host when Orchestrator has begun a failover/recovery, but it's not clear if there is a recommendation from you of how to do it, so if time permits, @shlomi-noach, I'd like to hear your thoughts on best practices here.
What I've implemented currently in my dev setup: On the host that runs HAproxy, I have a tiny python script that queries Orchestrator's /api/all-instances every 5 seconds and caches the results. I added an external-check into HAproxy that reads that file and fails if the host is marked downtimed. This works, but I believe is not ideally fencing the old source off, because I believe the IsDowntimed flag is not set early enough.
What I think would be ideal: If Orchestrator could update the KV store the second it detects the DeadMaster event (or others) with an empty value, or something else indicating that this host has been marked dead, we could update the consul-template to produce a dead-end-type server entry in HAproxy. Sure this can likely be implemented via PreFailoverProcesses but I'd feel much better if this was an Orchestrator feature (potentially opt-in). Heck if you think it's a good idea I'd even be willing to implement it, will likely not be that hard, right?
Again, thanks for your time and this great project!

STONITH has many known issues with reliability and is generally not a recommended approach to ensuring that a member leaves a group.  The best practice is to have a lease protocol where a node that cannot communicate with the lease arbiter is to SMITH.

how to fence off a failed master/source host when Orchestrator has begun a failover/recovery,

anything based on orchestrator's hooks, or on a proxy detecting the change etc. will only reduce the time the failed primary can receive writes. That is, fencing will take place sooner rather than later, but is it soon enough? What is soon enough? If you're good with letting the old primary receive writes for 1sec or for 100ms, you're still letting it deviate from the newly promoted server.
So first thing is to understand what you're trying to accomplish.
If you wish to completely fence the old primary, such that it will not take a single write beyond what's in the newly promoted primary, then semi-sync replication is probably what you're looking for, with "infinite" (very large) value for rpl_semi_sync_master_timeout. I recently wrote some about semi-sync here, and see links to blog posts by JFG.


LC0039 and Fully Qualified Object Name

Getting warning, similar to #384 and #380 but a little different

Argument 2: cannot convert from 'Record "Job Journal Line"' to 'Record "Job Journal Line"'.

When passing a fully qualified variable to Page.Run
    internal procedure Foo()
    var
        JobJournalLine: Record Microsoft.Projects.Project.Journal."Job Journal Line";
    begin
        Page.Run(Page::"Custom Job Journal", JobJournalLine);  //Page is our custom page
    end;

Interesting 🤔
Could you help me with a repro? This small example below seems to work, so probarly something with the page object what I'm missing here.
codeunit 50100 MyCodeunit
{
    internal procedure Foo()
    var
        JobJournalLine: Record Microsoft.Projects.Project.Journal."Job Journal Line";
    begin
        Page.Run(Page::"Custom Job Journal", JobJournalLine);
    end;
}

page 50100 "Custom Job Journal"
{
    ApplicationArea = All;
    PageType = Worksheet;
    UsageCategory = None;
    SourceTable = "Job Journal Line";
}

Ah, that kinda makes sense.
I still would love the have a repo to look into if I could improve the rule on this, because the message you're receiving now is a bit confusing.
Probably still overlooking something here, but this doesn't raise the rule0039 for me 🤔

I couldn't find a repo on this, but I think I have resolved this error.
Hoping that this is resolved in the updated (pre)release version of v0.30.8.


Request eDSL

Tickets addressed: Closes https://github.com/NASA-AMMOS/aerie/issues/929
Review: By commit
Merge strategy: Merge (no squash)

Description
The Sequence now includes an eDSL for handling requests. You have two options for making requests: type requests, represented by C.REQUEST(name, ...commands), and epoch requests, represented by REQUEST(name, epoch, ...commands).
You should be able to go back and forth between eDSL and SeqJson
export default () =>
  Sequence.new({
    seqId: '',
    metadata: {},
    locals: [
      UINT('temp')
    ],
    steps: ({ locals, parameters }) => ([
      C.ADD_WATER,
    ]),
    requests: ({ locals, parameters }) => ([
      REQUEST(
        'power',
        {
          delta: 'now',
          name: 'activate',
        },
        R`04:39:22.000`.PREHEAT_OVEN({
          temperature: locals.temp,
        }),
        C.ADD_WATER
      )
        .DESCRIPTION('Activate the oven')
        .METADATA({
          author: 'rrgoetz',
        }),
      R`00:00:30.000`.REQUEST(
        'power2',
        C.ADD_WATER
      )
        .METADATA({
          author: 'rrgoetz',
        })
    ]),
  });

Verification
manual testing and updated e2e test
Documentation
none
Future work
none

Everything seems good to me, did we ever figure out the real purpose of requests?

Not yet, I posted a question in the SeqJSON channel to see what they say. I will hold off on merging until I find out if we need local and parameters for request


Bug: Freeze after transporting colony. Unknown version(s).

From Steam user Antisodium
When you have 2 colonies and your last move makes one of them empty, the game crashes.
And sorry I can't provide the error log because the game just freezes and no log is recorded, but I can provide my operation history (for you to repeat the bug if necessary):
I was moving my colony from one map to another. The old map has 1 last person (namely A) and 5 more in cyrosleeper, with their icons hiding. I send A to the world map by transportation pod. The pod launched and flew successfully, but when it touches down, the game immediately freezes and crashes (which is exactly the time when A's icon should disappear from the old map bar, and appear in world caravan bar).
When I resume one of the 5 sleeping colonist's icons, the pod's touch down no longer crashes the game. But this means I have to leave at least one colonist behind...
Currently, I can fix this problem by creating a scapegoat using dev mode and abandon the whole colony then, but still very inconvenient. Will be very grateful if you can fix this.

Testing with RimWorld version 1.2, mod version 1.3.0, mod list:

Harmony
Core
Hugslib
Mod Manager
Colonist Bar Hiding

Test 1:
Steps taken:

Create new colony (3 colonists)
God-mode build two cryptosleep caskets.
Put two of three colonists in caskets.
Hide both colonists.
Make remaining colonist leave map via caravan.

Results:
No errors.

Create new colony (3 colonists)
God-mode build two cryptosleep caskets.
Put two of three colonists in caskets.
Hide both colonists.
Make remaining colonist leave map via transport pod.

Results:
No errors.

Test 3
Steps taken:

Create new colony (6 colonists), Colony A
Create another colony (6 colonists), Colony B
In colony A, build 5 cryptosleeps caskets.
Put five of six colonists in casket.
Hide all colonists that are in casket.
Transport remaining colonist to Colony B via transport pod.

Results:
No errors.

User unable to replicate problem. Closed.


WIP: write headers to response

Thanks for this! I left a quick note, will review for real later.
CI is failing due to formatting issues.

I've fixed the issue, formatting errors were due to an outdated rustfmt

@ashleygwilliams is there anything more to do?

We are at a conference today and tomorrow; we're not likely to have time to review stuff until thursday or Friday, maybe. Sorry about that!

Hi, no problem, I just wondered if I had missed something. Enjoy the conference!

rebased onto another branch and merged with https://github.com/steveklabnik/simple-server/pull/89
thank u so much!! sorry for the long turnaround time 😅


Add missing space for command in migrating-from-bitbucket-pipelines-with-github-actions-importer.md

Why:
I was following this guide and I found a space is missing on a command (to space arguments)
What's being changed (if available, include any code snippets, screenshots, or gifs):
I just add an extra space on a command to separate arguments correctly
Check off the following:

[x] I have reviewed my changes in staging, available via the View deployment link in this PR's timeline (this link will be available after opening the PR).

For content changes, you will also see an automatically generated comment with links directly to pages you've modified. The comment won't appear if your PR only edits files in the data directory.

[x] For content changes, I have completed the self-review checklist.

@matiaslauriti Thanks so much for opening a PR with this fix! I'll update the branch and get this merged once tests are passing 🍏


26X5

Key
Value

View
https://database.shabados.com/sources/1/page/965/line/8

Source
Sri Guru Granth Sahib Ji

Page
965

ID
26X5

Line
ibnu nwvY; bhu Pyru iPrwhir ]

Shabadarth (Vol. 3) | July 2010 | SGPC, Sri Amritsar

#95 #1480


Please merge FFI changes into dev channel

commit(s) to merge: https://github.com/dart-lang/sdk/commit/08132661a6b11e65a36d6b89098679268f4d4c7b, https://github.com/dart-lang/sdk/commit/d6af8654e58b837cd27d3b7ceea9e0678c0f1bf8 https://github.com/dart-lang/sdk/commit/f989605cc96bef6e34a3833dbbea522b86d313b2
merge instructions: n/a
reason: FFI is launching in preview win 2.5
/cc @dgrove @kevmoo @mit-mit @whesse @athomas

cc @dcharkes @sjindel-google

We decided not to include these changes in 2.5.0. They are all included in 2.6.0-dev.0.0.

Not even the documentation changes?

Not even the documentation changes were accepted.

The rationale was that FFI API docs are available at https://api.dart.dev/dev, where they will update everytime we release a dev build