enhancement-#102: Refactoring of all the md: to sm:

Summary
This PR is for proper naming convention using sm:
Description
It was before at some places md: ,now by changing md: to sm:, we can clarify that these styles are targeted not just at medium-sized devices but also at smaller devices like tablets. This adjustment ensures that the styling is more accurately aligned with the intended range of devices.
Issue(s) Addressed
Closes #102
Prerequisites

[x] Have you followed all the CONTRIBUTING GUIDELINES?

Please take care of issues addressed on the PR description, then we are good to merge...

Please take care of issues addressed on the PR description, then we are good to merge...

What issues can you please specify

Compare the PR I gave you, you'll get it basically you have to trim closes 1 and add yours

Sorry @Chelseasingla1 , it even doesn't have the right thing

It should be this way

Sorry @Chelseasingla1 , it even doesn't have the right thing

It should be this way

@krishnaacharyaa Can you please check now

 You had to remove other things in there, I'll edit no issues, kindly take care from next time

 You had to remove other things in there, I'll edit no issues, kindly take care from next time

@krishnaacharyaa Yes sir sorry actually the one PR you mentioned, it was still there so i did not remove it.

LGTM, thank you

Thanks to you sir for such a great guidance and patience!!!

no worries @Chelseasingla1 , congrats for your first contribution. Feel free to take up any other tasks. This time you are experienced 😉😁

no worries @Chelseasingla1 , congrats for your first contribution. Feel free to take up any other tasks. This time you are experienced 😉😁

@krishnaacharyaa yes sure sir !!!


Enable capturing of test stdout on testall

Fixes https://github.com/kategengler/ember-try/issues/30

I think in general, it would be better to configure testem.json to use a different reporter (that would make it much less prone when parsing stdout).
See https://github.com/poteto/ember-cli-flash/commit/5df7f87ab888bbebb5db6c6ff9954e7271b65a54 for an example of using testem output xunit format from test runs (IMHO this is much better than using stdout).

I'm using .tap reports that are a bit more robust for this use case. Anyway, testem doesn't have a concept of different runs with different configurations. Therefore ember-try would have to overwrite testem's report_file configuration option or provide a hook to have this file copied to another destination after each run.

ember-try already modified the bower.json for each run, this could be a very similar thing. I definitely think we should avoid using stdout from 'ember test' runs, we have had MANY issues reported in ember-cli due to addons modifying the console output (stray console.logs and whatnot).

Ok, if we go this path, what should the ember-try.json file look like? Like this ...
module.exports = {
  scenarios: [
    {
      name: 'Ember 1.10 with ember-data',
      dependencies: {
        'ember': '1.10.0',
        'ember-data': '1.0.0-beta.15'
      },
      testem: { /* to be merged into the existing testem.json */
        "report_file": "path/to/some/file.tap",
      }
    },
    { /*...*/ }
  ]
};

Or do you think of something more generic?

Ok, here's a version that changes testem.json: https://github.com/kategengler/ember-try/pull/32

I wonder if some more generic hooks for things like afterScenarioSetup and beforeScenarioTeardown would work for this?

For me anything that does the job is ok.


Wrong background color in diff mode

Description

nvim --version output: NVIM v0.7.0-dev+733-gb1757e1c2
 Build type: RelWithDebInfo
 LuaJIT 2.1.0-beta3
 Compilation: /usr/bin/cc -DNVIM_TS_HAS_SET_MATCH_LIMIT -O2 -g -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wshadow -Wconversion -Wmissing-prototypes -Wimplicit-fallthrough -Wvla -fstack-protector-strong -fno-common -fdiagnostics-color=always -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -DMIN_LOG_LEVEL=3 -I/home/hexh/desktop/neovim/build/config -I/home/hexh/desktop/neovim/src -I/home/hexh/desktop/neovim/.deps/usr/include -I/usr/include -I/home/hexh/desktop/neovim/build/src/nvim/auto -I/home/hexh/desktop/neovim/build/include
 Compiled by hexh@hexh

 Features: +acl +iconv +tui
 See ":help feature-compile"

    system vimrc file: "$VIM/sysinit.vim"
   fall-back for $VIM: "/usr/local/share/nvim"

 Run :checkhealth for more info

Operating system:

Manjaro Linux x86_64 5.10.89-1-MANJARO

Record
https://user-images.githubusercontent.com/26080416/148767236-cac200cb-e46f-4ce1-aa93-3ef6e0abef51.mp4

Steps(Look at the video)

call :VGit buffer_history_preview
Locate to HEAD~2 and there is one line change(line 98)
Locate to HEAD~3 and there are many changes. The line 66 to line 88 displays green background but it has no change commit actually.
Go back to HEAD~2. You can see the right panel is different than step 2. It shows more green lines abnormally.

config
require("vgit").setup({})

In fact I do not konw how to reproduce this issue accurately so I record this video.

Hey, thanks for the issue. It's hard for me to find bugs like these because of all the possibilities, so I really appreciate it.
It looks like an issue with stale painting that is not being cleared as you switch files, I will try to reproduce and issue a fix.

@hexh250786313 Just pushed an update, let me know if you are still facing this issue.

@tanvirtin I pull the update, but it does not work. Then I try disable my plugins one by one. Finally I found focus.nvim caused the issue. focus.nvim helps auto-resize the focused window. Actually it was not a required function for me. Now I disable focus.nvim and everything works fine. But I hope there is a better way to fix it.

I tried several ways to combine Focus.nvim with vgit.nvim, but I found Focus.nvim had many rendering issues except current issue. I gave up Focus.nvim.
Issue close!


Revert emissary to 3.6.0

Issue #, if available:
Description of changes:
Revert Emissary package back down to 3.6.0
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve
/woof

/lgtm

/approve


Storybook not recovering from errors "Error: get_(...).unmountComponentAtNode is not a function"

If an error occurs in a story, after fixing the error the story is stuck in an error state.
I'm using version 1.34.0
Expected:
The story will 'recover' and return to a working state after the coding/syntax error is fixed.
Actual:
The following error replaces the original error:
Error: _get__(...).unmountComponentAtNode is not a function

Refreshing the browser fixes the problem until the next time a coding/syntax error occurs.

Is it possible to get a kind of a sample project. So, I can work on this.

May be related to this: https://github.com/kadirahq/react-storybook/issues/276

Got this issue too since 1.34.x. I need to it a full reload each time the red warning is displayed.

Yep. Found the issue and fixed with the newest version: v1.35.1

Thanks 👍  You nailed it.

Great. Going to close this then :)

@arunoda : Can you clarify what exactly the issue was?  I'm seeing the same issue in my own app, and this is the only real hit for the specific error message.

@markerikson are you using the latest version of Storybook?
If that's the latest, could you open a new issue with a way to reproduce the issue.

Ah... no, I'm not using Storybook at all, I'm just using redbox-react in my own application, and seeing this same error message.  Was curious exactly what you did to work around things.

Actually, not we are using a our own error box. We don't use react-redbox anymore.


SARAALERT-1102: clicking "cancel" on update report modal should not get stuck

Description
Jira Ticket: SARAALERT-1102 & SARAALERT-1133
This addresses three different bugfixes (listed in the bugfixes section).  In addition, renamed assessment files to report for consistency, restructured where all those files resided, and added test suites for all the reports files.  The diff looks scary but this is mostly due to the additional changes I just mentioned.
(Bugfix) How to Replicate
Bug #1: Clicking cancel on the edit report modal gets stuck

Select edit in the actions dropdown in the reports table
Make a change (i.e. select a new box)
Click submit
Click cancel on the confirmation modal - notice the endless spinning

Bug #2: "Add New Report" modal does not reset checked boxes when closed without submitting/canceling

Click "Add Report" on patient reports table
Check some boxes
Click the "x" button in the top right
Click the "Add Report" button again
Notice the same boxes are checked
Repeat while editing a report and

Bug #3: Confirmation dialog loads when editing a report but making no changes

Select edit in the actions dropdown in the reports table
DO NOT MAKE A CHANGE, just click submit
Confirmation modal loads

(Bugfix) Solution
Bug #1: Refactored Report.js and SymptomsReport.js so that the submit/confirmation now resides in the latter file.  Added an else case to the await ConfirmDialog to handle the cancle
Bug #2: I'm actually not sure what fixed this but something did along the way
Bug #3: hasChanges method was not working as intended and always registered that their were changes even when there weren't
Testing
This fix was tested on the following browsers (submitter must check all those that apply):

[x] Chrome
[ ] Firefox
[ ] Safari
[ ] IE11

Please describe the tests needed to verify your changes. Provide instructions for reproducing these tests. List any relevant details for your test configuration.

This PR has big enough changes I think we need to target a later release. Can you have this branch target the new 1.21.0 candidate branch? https://github.com/SaraAlert/SaraAlert/pull/636

I have no idea why git thinks the diff is this big for this PR and that there are conflicts.... I have none locally and a nice tree

I have no idea why git thinks the diff is this big for this PR and that there are conflicts.... I have none locally and a nice tree

I was able to verify your fixes for bugs 1 & 2 behave as expected.
I had a few thoughts regarding the behavior for the bug 3 fix - That fix appears to have addressed the issue listed. But when the user clicks "Submit" on an unedited Symptom report, even if there were no actual changes made to the report, a "Report Updated" history entry is created. Since the report wasn't technically changed, should we consider not creating such a history entry in this situation? And as an even more high-level thought, should the "Submit" button even be enabled while no changes to the report are detected? Would simply disabling the "Submit" button when no edits are detected be another possible fix for this issue? Open to Thoughts!

I was able to verify your fixes for bugs 1 & 2 behave as expected.
I had a few thoughts regarding the behavior for the bug 3 fix - That fix appears to have addressed the issue listed. But when the user clicks "Submit" on an unedited Symptom report, even if there were no actual changes made to the report, a "Report Updated" history entry is created. Since the report wasn't technically changed, should we consider not creating such a history entry in this situation? And as an even more high-level thought, should the "Submit" button even be enabled while no changes to the report are detected? Would simply disabling the "Submit" button when no edits are detected be another possible fix for this issue? Open to Thoughts!

I was able to verify your fixes for bugs 1 & 2 behave as expected.
I had a few thoughts regarding the behavior for the bug 3 fix - That fix appears to have addressed the issue listed. But when the user clicks "Submit" on an unedited Symptom report, even if there were no actual changes made to the report, a "Report Updated" history entry is created. Since the report wasn't technically changed, should we consider not creating such a history entry in this situation? And as an even more high-level thought, should the "Submit" button even be enabled while no changes to the report are detected? Would simply disabling the "Submit" button when no edits are detected be another possible fix for this issue? Open to thoughts!

@rhack I personally like this idea! however not sure how the users feel about disabling buttons.  @holmesie, how do you feel about disabling the submit button when editing a report that has no changes yet?

I was able to verify your fixes for bugs 1 & 2 behave as expected.
I had a few thoughts regarding the behavior for the bug 3 fix - That fix appears to have addressed the issue listed. But when the user clicks "Submit" on an unedited Symptom report, even if there were no actual changes made to the report, a "Report Updated" history entry is created. Since the report wasn't technically changed, should we consider not creating such a history entry in this situation? And as an even more high-level thought, should the "Submit" button even be enabled while no changes to the report are detected? Would simply disabling the "Submit" button when no edits are detected be another possible fix for this issue? Open to thoughts!

@rhack I personally like this idea! however not sure how the users feel about disabling buttons.  @holmesie, how do you feel about disabling the submit button when editing a report that has no changes yet?

@holmesie all file names are now back to assessment instead of report

@holmesie all file names are now back to assessment instead of report

@sgober @hackrm I think that's a great idea! Let's create a ticket to track that (but not in this PR).

@sgober @hackrm I think that's a great idea! Let's create a ticket to track that (but not in this PR).

@holmesie @sgober - I captured the future update we discussed in SARAALERT-1222

@holmesie @sgober - I captured the future update we discussed in SARAALERT-1222


Added support for Flux with self-managed CRDs

[!warning]
This is public repository, ensure not to disclose:

[x] personal data beyond what is necessary for interacting with this pull request
[x] business confidential information, such as customer names

What kind of PR is this?
Required: Mark one of the following that is applicable:

[x] kind/improvement

What does this PR do / why do we need this PR?
Adds support for Flux using self-managed CRDs ( #1716 )
It is needed to enable the use of self-managed Flux ( #1754 )

...

Fixes #1804

Checklist

[x] Proper commit message prefix on all commits

[x] Added changes to WIP-CHANGELOG.md
Change checks:

[x] The change is transparent
[ ] The change is disruptive
[ ] The change requires no migration steps
[ ] The change requires migration steps

@robinAwallace please take a look again, if it looks good will resolve comments.
I removed the flux-admin clusterrole and made the flux-admin clusterrolebinding refer to crd-controller instead.


Improve filtering of vintages

Description
Only return polygon-digital-carbon vintages for credits which have a pool with a non zero balance
Related Ticket
Closes
Also related to #2129
Notes For QA
Preview URL: https://carbonmark-476cw0noh-klimadao.vercel.app/projects

Looks good on the frontend. Only vintages remaining that we actually offer 👍


Split primitives files into multi-file modules

Hi! Thank you for helping out with Embedded Graphics development! Please:

[ ] Check that you've added passing tests and documentation
[ ] Add a simulator example(s) where applicable
[ ] Add a CHANGELOG.md entry in the Unreleased section under the appropriate heading (Added, Fixed, etc) and appropriate crate (embedded-graphics, simulator, tinytga, tinybmp) if your changes affect the public API
[ ] Run rustfmt on the project
[ ] Run ./build.sh (Linux/macOS only) and make sure it passes. If you use Windows, check that CI passes once you've opened the PR.

PR description
Closes #364
Closes #361

This should be ready for an initial review. Some points:

This should be reviewable commit-by-commit. I tried to make them self contained so it's easier to go through.
The last commit ("Reduce code duplication in Triangle iterators") is my attempt at deduping the triangle iter code for #314. You might've had a different idea though so I'm happy to change my approach.
I wasn't entirely sure how to split the tests as some of them apply to multiple files in a module. If you find tests that should obviously be in a different file please let me know.
CornerRadii and EllipseQuadrant are moved into rounded_rectangle as they're only used in there for now. We could move EllipseQuadrant out later if we expose it as a primitive.

The last commit ("Reduce code duplication in Triangle iterators") is my attempt at deduping the triangle iter code for #314. You might've had a different idea though so I'm happy to change my approach.

I have never looked at the triangle code in detail before and didn't have a plan how to change it yet. But on first glance your version look much nicer than the old code.

CornerRadii and EllipseQuadrant are moved into rounded_rectangle as they're only used in there for now. We could move EllipseQuadrant out later if we expose it as a primitive.

Sounds good.

One suggestion to solve this: Rename all styled_iterator.rs filed into styled.rs and move all Styled related code into that file, not only the iterator but also Drawable and IntoIterator. Then all styling depended test could also go into that file.

I briefly considered this idea but decided not to go in that direction for some reason. After the initial split, I think this is indeed the best way to go, so I'll refactor the primitives to follow this pattern.

wheeze
5 million Ctrl + X, Ctrl + V later and I think this is in a much better place now. The new commits should be reasonably self-contained so might help to go through them one at a time to keep the file moving noise down.

(or organised if you prefer that :wink:)


Requested PR for "Incorrect Battery Readings #568"

This is my first try on Java Script Please have a look on the xiaomi_battery_3v block beginning in line 168 and the function toPercentageCR2032 beginning in line 43.
I'd love if this works. ;-)

The Travis CI build failed


cloud-docs rst->md conversion

Summary of the changes / Why this is an improvement
Substantial change - highlights below:

howtos - rst->md

reworked index to use the grid layout, added cards
deleted howtos/connect-to-cluster/index.md and placed the card within it directly into index.md
added a reference point to tutorials/quickstart

tutorials/edge

converted rst->md
reworked index, added the cards similar to others

reference - rst->md

removed subscription-plans.md as it's superseded by services

tutorials/deploy/croud.md - rst->md

added a card to cannonical croud docs to make them more prominent

Checklist

[x] Link to issue this PR refers to (if applicable): https://github.com/crate/tech-writing/issues/402
[x] CLA is signed

Went through all the changes pretty rigorously multiple times, but it's a big change so would appreciate a review from anyone interested. Thank you in advance.
The main concern is broken links, althoutgh check should catch those. Technically everything should work, quite sure of that.

Hi @amotl. Do you still need couple more days to look this over, or are you happy with it?
I've got some feature docs in-progress and would like to merge this first and to them in Markdown already. Not to rush you, of course. Thanks!

Hi Matej. I can't find the cycles, unfortunately. I think it will be good to go, thanks again!


How save .on(click...) changes like .addClass() after pjax?

I have a some form, with several blocks with several checkboxes. By clicking on block it has .addClass('active') and siblings blocks .removeClass('active') if it is.  So only one block can have class 'active'. After selecting chekbox form reload via pjax and reload all DOM elements and certainly class 'active' deleted too. How can save this class after pjax?
Initially I had the idea:
function collapse(){
        $('#filter-form [type="checkbox"]').each(function() {
            if ($(this).prop('checked')) {
                $(this).closest('#filter-block').addClass('active');
            }
        });
    }
$(document).on('pjax:success', function(e) {
        collapse();
    });

But this solution is incorrect, because class 'active' is added to all blocks with checked chekboxes.
Сlass 'active' only need to the block from which the submit was.
Onclick function:
    $('body').on('click', '#filter-title' , function(){
        $(this).parent().toggleClass('active');
        $(this).parent().siblings().removeClass('active');
    });

Maybe assign to the submit? It does not work:
    $('body').on('change', '.checkbox__filter', function (e) {
        $(this).closest('form').submit();
       $(this).closest('#filter-block').addClass('active');
    });

I solved the problem by adding the index of clickable element to the hidden input value via .index()
var $set = $('#filter-title'),
            n=$set.index(this);
    $("input[name=index]").val(n);

Than, after pjax will reload DOM, and I can find this element by selector :eq() and add needed class
var eq = $("input[name=switch]").val();
    $('#filter-title:eq('+eq+')').parent().addClass("active");


Added remove_texts on some different vectorsearch

@andreibondarev I think we must modify the milvus vectorsearch to receive ids on add_texts or


Improve performance of add_cell by fixing workbook validation (10-40x improvement)

This patch fixes a major performance issue with Worksheet. Every time a new column is added, rubyXL checks if the worksheet is included in the workbook. Unfortunately, it uses include? (which ultimately calls ==) method, which compares every column of every row to see if the worksheets are the same.
This patch fixed this issue by comparing worksheets by reference, which improved performance significantly.
From Ruby documentation:

Unlike ==, the equal? method should never be overridden by subclasses as it is used to determine object identity (that is, a.equal?(b) if and only if a is the same object as b):

Test used:
val = 'a' * 50
workbook = RubyXL::Workbook.new
(1..5).each do |sheet|
  worksheet = workbook["Sheet#{sheet}"] || workbook.add_worksheet("Sheet#{sheet}")

  (1..1000).each do |row|
    (1..30).each do |col|
      worksheet.add_cell(row, col, val)
    end
  end
end

Benchmarking results:
Before: 75.90 real    72.16 user    0.54 sys
 After:  2.53 real     2.35 user    0.09 sys

👍

That was fast. Thanks a lot for this great library!


fix(upgrade): Fix warnings from other repos using it

BREAKING CHANGES (potentially)
Attempting to just do cleanup

@davidungio No, I haven't but I'll create an unstable version to check it. Seems this build is still running on semaphore as well

@davidungio No, I haven't but I'll create an unstable version to check it. Seems this build is still running on semaphore as well

Yah, I just removed the webhook to Semaphore. It should be ignored on next build.


Face ID flow only invokes the success callback on the second attempt

I am testing the Sign in with Apple with Face ID facial recognition on.
The Sign in with Apple flow looks to be succesful but the callback is never fired on the first attempt.
After the second attempt, the Sign in With Apple-flow is once again successful and this time the callback is invoked normally.
Anyone else experiencing this issue? What could be the issue here?

Hi,
Update on this. The problem is actually not only the face ID, but the sign in flow in general.
When running locally, the login works normally with first attempt.
When running the app from test flight, the first attempt does not apparently invoke the success callback but second attempt does.

I have the same issue. Running locally works but running from TestFlight does not launch the success callback.

I’m also having this issue. Works fine locally but requires multiple attempts from TestFlight to launch success callback.

We are also facing similar issue. It is just not first attempt but in random.
I have added details in this issue: https://github.com/EddyVerbruggen/nativescript-apple-sign-in/issues/13

I think the problem is related to the mismatch behaviour between debug and release build when adding objective c protocols into a class on-the-fly instead of static reference.
https://github.com/EddyVerbruggen/nativescript-apple-sign-in/blob/ad62e1f2be973be91a04d8a1a8cf6105cbe07b3d/src/apple-sign-in.ios.ts#L136
When I removed the hack and put the ASAuthorizationControllerDelegate into ObjCProtocols below, everything works fine

I found the problem may be related to garbage collection of delegate variable.
https://github.com/EddyVerbruggen/nativescript-apple-sign-in/blob/ad62e1f2be973be91a04d8a1a8cf6105cbe07b3d/src/apple-sign-in.ios.ts#L13
This variable may be removed by the minifier during production build. A simple fix is add export flag to it

I found the problem may be related to garbage collection of delegate variable.
https://github.com/EddyVerbruggen/nativescript-apple-sign-in/blob/ad62e1f2be973be91a04d8a1a8cf6105cbe07b3d/src/apple-sign-in.ios.ts#L13
This variable may be removed by the minifier during production build. A simple fix is add export flag to it

@20051231 Hi, thanks for the find, can you please help us how to add the export flag to it?

I found the problem may be related to garbage collection of delegate variable.
https://github.com/EddyVerbruggen/nativescript-apple-sign-in/blob/ad62e1f2be973be91a04d8a1a8cf6105cbe07b3d/src/apple-sign-in.ios.ts#L13
This variable may be removed by the minifier during production build. A simple fix is add export flag to it

@20051231 Hi, thanks for the find, can you please help us how to add the export flag to it?

should be enough to change this line.
export let delegate: ASAuthorizationControllerDelegateImpl;
I did not build the project but I just modify the npm package to test it.

I found the problem may be related to garbage collection of delegate variable.
https://github.com/EddyVerbruggen/nativescript-apple-sign-in/blob/ad62e1f2be973be91a04d8a1a8cf6105cbe07b3d/src/apple-sign-in.ios.ts#L13
This variable may be removed by the minifier during production build. A simple fix is add export flag to it

@20051231 Hi, thanks for the find, can you please help us how to add the export flag to it?

should be enough to change this line.
export let delegate: ASAuthorizationControllerDelegateImpl;
I did not build the project but I just modify the npm package to test it.

I have done a build and tested in TestFlight. I can validate that this fix works.

@ryanmolley nice work, can you make a PR or push the fix to some repository?

I made a PR #15 with the delegate export.
It can take some time until it gets merged so meanwhile you can try to use my package which contains the change.
https://www.npmjs.com/package/@hifox/nativescript-apple-sign-in

@EddyVerbruggen Old issue but is there any chance you could take a look at the PR highlighted above?

@EddyVerbruggen this is blocker, Apple will not allow me to release the app because this feature must work, i must have user name and email and this plugin shows this data only once. Please resolve if you can. Thanks a lot.

@konradkluzniak unfortunately, this is how the apple sign in works :( they only return the e-mail on the first run (that's where you have to create an account on your side and link it with the apple id)
https://developer.apple.com/forums/thread/121496

Thanks @res0 , so does it mean that i can only have this data ONCE, and never again i can check it using any token or something ? The thing is, if you login with apple this data is saved in https://appleid.apple.com/. Only one way to see this data again is to login at https://appleid.apple.com/ and remove this app from stored logins. This will not work and apple submission guy will reject again. So how they do it in native iso apps ? Thanks.
Also, above we have a solution for this or am i wrong ? Cheers.

@konradkluzniak yeah, only once. I don't get that too, but it is what it is. :D When you get it the first time, you have to keep the data associated with the user ID

@konradkluzniak yeah, only once. I don't get that too, but it is what it is. :D When you get it the first time, you have to keep the data associated with the user ID

Thanks! But is user will uninstall the app , i eventually will loose this data...

@konradkluzniak that's why you need to keep it outside of the app, somewhere on your server.


Migrate repo to GitHub Actions, as Travis integration is broken (and no longer fully free)

Anyone eager to help, perhaps?

@keradus Hello! I'll try to help with GitHub Actions setup

@keradus Yesterday I just start to work on this issue and I faced problem - dozen messages from the CS FIXER - you can check here - https://github.com/php-coveralls/php-coveralls/runs/4197929414?check_suite_focus=true
Should I refactor that?
And second one question
Can I change codestyle according to the new third version by copied configuration from some big opensource project?
like Symfony or some of Symfony bundle?

thanks for picking up the migration topic ;)
please, do not mix migration of CI with change of PHP CS Fixer version/config - this will make the PR way bigger. If you stick to ^2.16, there are no changes expected.
ker@dus php-coveralls % php dev-tools/vendor/bin/php-cs-fixer --version
PHP CS Fixer 2.16.10 Yellow Bird by Fabien Potencier and Dariusz Ruminski

ker@dus php-coveralls % php dev-tools/vendor/bin/php-cs-fixer fix -vvv --dry-run
Loaded config default from "/Users/keradus/github/php-coveralls/.php_cs.dist".
Runtime: PHP 8.0.12
...............................................
Legend: ?-unknown, I-invalid file syntax (file ignored), S-skipped (cached or empty file), .-no changes, F-fixed, E-error

@keradus Yes, I will not mix it. I was in a hurry with the question. But I am already revert to the  ^2.16 version and apply conflict directive to avoid my mistake in future)
Let's create new issue about upgrade if that needed


How to configure logging rules from code?

Here is the NLog.config file I was previously using which worked:
<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xsi:schemaLocation="NLog NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      autoReload="true"
      internalLogFile="c:\temp\console-example-internal.log"
      internalLogLevel="Info" >

	<variable name="provider" value="ENGINE" />

	<targets>
		<target xsi:type="ColoredConsole" name="coloredConsole" useDefaultRowHighlightingRules="false" layout="[${time}]	[${level:uppercase=true}]	[${var:provider}]: ${message}	${exception:format=tostring}" >
			<highlight-word foregroundColor="DarkYellow" regex="ENGINE"/>
			<highlight-word foregroundColor="Green" regex="CLIENT"/>
			<highlight-row condition="level == LogLevel.Trace" foregroundColor="DarkCyan" />
			<highlight-row condition="level == LogLevel.Debug" foregroundColor="DarkGray" />
			<highlight-row condition="level == LogLevel.Info" foregroundColor="Gray" />
			<highlight-row condition="level == LogLevel.Warn" foregroundColor="Yellow" />
			<highlight-row condition="level == LogLevel.Error" foregroundColor="Red" />
			<highlight-row condition="level == LogLevel.Fatal" foregroundColor="DarkRed" backgroundColor="White" />
		</target>
	</targets>

	<rules>
		<logger name="*" minlevel="Trace" writeTo="coloredConsole" >
			<filters>
				<when condition="not starts-with(logger, 'MyApp')" action="Ignore" />
			</filters>
		</logger>
	</rules>

</nlog>

Here is the code equivalent of the same:
var configuration = new LoggingConfiguration();

var target = new ColoredConsoleTarget();
configuration.AddTarget("coloredConsole", target);

configuration.Variables.Add("provider", new SimpleLayout("ENGINE"));

target.UseDefaultRowHighlightingRules = false;

target.Layout = "[${time}]	[${level:uppercase=true}]	[${var:provider}]: ${message}	${exception:format=tostring}";

target.WordHighlightingRules.Add(
    new ConsoleWordHighlightingRule
    {
        Regex = "ENGINE",
        ForegroundColor = ConsoleOutputColor.DarkYellow
    });
target.WordHighlightingRules.Add(
    new ConsoleWordHighlightingRule
    {
        Regex = "CLIENT",
        ForegroundColor = ConsoleOutputColor.Green
    });

target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Trace",
        ForegroundColor = ConsoleOutputColor.DarkCyan
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Debug",
        ForegroundColor = ConsoleOutputColor.DarkGray
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Info",
        ForegroundColor = ConsoleOutputColor.Gray
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Warn",
        ForegroundColor = ConsoleOutputColor.Yellow
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Error",
        ForegroundColor = ConsoleOutputColor.Red
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Fatal",
        ForegroundColor = ConsoleOutputColor.DarkRed,
        BackgroundColor = ConsoleOutputColor.White
    });

LogManager.Configuration = configuration;

When I switch to this, nothing is logged in the console anymore. Am I missing something?
Also I can't find the code equivalent of:
<rules>
    <logger name="*" minlevel="Trace" writeTo="coloredConsole" >
        <filters>
            <when condition="not starts-with(logger, 'MyApp')" action="Ignore" />
        </filters>
    </logger>
</rules>

Thanks

You've forgot adding the logging rule in the code ;)

Without the filter you could do:
 configuration.AddRule(LogLevel.Trace, LogLevel.Fatal, target);

With the filter, you need to construct the LoggingRule yourself, e.g.:
var loggingRule = new LoggingRule("*", LogLevel.Trace, target);
loggingRule.Filters.Add(new ConditionBasedFilter()
{
    Condition = "not starts-with(logger, 'MyApp')",
    Action = FilterResult.Ignore
});

Thanks, I hadn't found LoggingRule() in the docs. So that leaves me with the following as a conversion of the NLog.config file:
var configuration = new LoggingConfiguration();
var target = new ColoredConsoleTarget();

configuration.AddTarget("coloredConsole", target);
configuration.Variables.Add("provider", new SimpleLayout("ENGINE"));

var rule = new LoggingRule("*", LogLevel.Trace, target);
rule.Filters.Add(new ConditionBasedFilter()
{
    Condition = "not starts-with(logger, 'MyApp')",
    Action = FilterResult.Ignore
});

target.UseDefaultRowHighlightingRules = false;
target.Layout = "[${time}]	[${level:uppercase=true}]	[${var:provider}]: ${message}	${exception:format=tostring}";

target.WordHighlightingRules.Add(
    new ConsoleWordHighlightingRule
    {
        Regex = "ENGINE",
        ForegroundColor = ConsoleOutputColor.DarkYellow
    });
target.WordHighlightingRules.Add(
    new ConsoleWordHighlightingRule
    {
        Regex = "CLIENT",
        ForegroundColor = ConsoleOutputColor.Green
    });

target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Trace",
        ForegroundColor = ConsoleOutputColor.DarkCyan
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Debug",
        ForegroundColor = ConsoleOutputColor.DarkGray
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Info",
        ForegroundColor = ConsoleOutputColor.Gray
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Warn",
        ForegroundColor = ConsoleOutputColor.Yellow
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Error",
        ForegroundColor = ConsoleOutputColor.Red
    });
target.RowHighlightingRules.Add(
    new ConsoleRowHighlightingRule()
    {
        Condition = "level == LogLevel.Fatal",
        ForegroundColor = ConsoleOutputColor.DarkRed,
        BackgroundColor = ConsoleOutputColor.White
    });

LogManager.Configuration = configuration;

I think this is a more 1:1 conversion, it still however isn't actually working whereas if I put the Nlog.config file back in and comment this code out the logger works as expected. Any ideas what's missing?

It's also missing the variable.
I would recommend to check the internal log or start with the most simple config (one rule, one target, no filters)

Instead doing this to ignore logger-names that doesn't being with "MyApp":
<rules>
    <logger name="*" minlevel="Trace" writeTo="coloredConsole" >
        <filters>
            <when condition="not starts-with(logger, 'MyApp')" action="Ignore" />
        </filters>
    </logger>
</rules>

Then I suggest doing this:
<rules>
    <logger name="MyApp*" minlevel="Trace" writeTo="coloredConsole" final="true" />
</rules>

This would also match this rule:
configuration.AddRule(LogLevel.Trace, LogLevel.Fatal, target, "MyApp*", true);
LogManager.Configuration = configuration;

@304NotModified Please consider including #4128 with NLog 4.7.7, so we can have better code-examples.

Switching to configuration.AddRule(LogLevel.Trace, LogLevel.Fatal, target, "MyApp*", true); works perfectly. Not sure why the full filter works from config but not from code:
var rule = new LoggingRule("*", LogLevel.Trace, target);
rule.Filters.Add(new ConditionBasedFilter()
{
    Condition = "not starts-with(logger, 'MyApp')",
    Action = FilterResult.Ignore
});

You created the rule, but never added it to configuration. Btw. Filtering using Logger-name is much faster than when-filters.
Sent from my Sony Xperia
---- ScottKane wrote ----
Switching to configuration.AddRule(LogLevel.Trace, LogLevel.Fatal, target, "MyApp*", true); works perfectly. Not sure why the full filter works from config but not from code:
var rule = new LoggingRule("*", LogLevel.Trace, target);
rule.Filters.Add(new ConditionBasedFilter()
{
Condition = "not starts-with(logger, 'MyApp')",
Action = FilterResult.Ignore
});
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/NLog/NLog/issues/4206#issuecomment-748061491, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ACXZ7HFCLHZN3TH5IC3HQ3DSVND5RANCNFSM4U7VZTTQ.

Ahh ok makes sense. Thanks for the fast responses. Also just wondering if you can think of a better way to do the following:
target.WordHighlightingRules.Add(
    new ConsoleWordHighlightingRule
    {
        Regex = "ENGINE",
        ForegroundColor = ConsoleOutputColor.DarkYellow
    });

I only want to target the first occurrence of "ENGINE" in the line but couldn't think of a regex pattern to do this so just settled on finding the whole word in uppercase

Think we are moving outside the scope of the original question. If you need help with regex, then I think StackOverflow is an excellent place to go.
Happy coding


ol-geocoder results are too much zoomed -in

I am using  ol-geocoder 4.1.2. The results are too much zoomed in .
I have followed https://jsfiddle.net/jonataswalker/c4qv9afb/
In the fiddle above, the results are at a suitable zoom level.
I have used "view.setZoom(12)" , the results are unaffected.

put preventDefault option to true.
and then
geocoder.on('addresschosen', function (evt) {
   map.getView().setZoom(12)
});

I have corrected this in https://github.com/Dominique92/ol-geocoder
This bug occurs when the provider returns a coordinate but no bbox.
I have corrected this & provided an option

defaultFlyResolution : 1; (meters per pixel) resolution to fly to when only coords & not bbox is returned by the provider;

Closed in https://github.com/Dominique92/ol-geocoder/releases/tag/v4.3.0

When the provider returns an extent with the location found (country, city, ...), the map is enlarged to this extent.
When the provider returns no extent (simple point of interest), the map is enlarged to the defaultFlyResolution option.
If you want the map to be zoomed to another resolution when no extend is returned, you can tune the following Geocoder option:
{
    defaultFlyResolution: 10, // Meters per pixel
}

Using resolution (meters per pixel) is more accurate than zoom (level of tile count from maximum of displayed layer)


Batch skinned meshes on platforms where storage buffers are available.

This commit makes skinned meshes batchable on platforms other than WebGL
2. On supported platforms, it replaces the two uniform buffers used for joint matrices with a pair of storage buffers containing all matrices for all skinned meshes packed together. The indices into the buffer are stored in the mesh uniform and mesh input uniform. The GPU mesh preprocessing step copies the indices in if that step is enabled.
On the many_foxes demo, I observed a frame time decrease from 15.470ms to 11.935ms. This is the result of reducing the submit_graph_commands time from an average of 5.45ms to 0.489ms, an 11x speedup in that portion of rendering.

This is what the profile looks like for many_foxes after these changes.

I'm not sure if this is working? I ran many_foxes through renderdoc, and I still see hundreds of vkCmdDraws, each with two vkCmdBindDescriptorSets before it. One for StandardMaterial, one for skinned_mesh_bind_group. I would've expected only one vkCmdBindDescriptorSets for skinned_mesh_bind_group, and then since the meshes are the same we don't have to rebind StandardMaterial either, and then you would be able to collapse all the draws down to one draw with instance_count=N.

Hmm, it works for me on my G14 Windows 11, with many_foxes --count=100 (it's a low number because I'm in a debug build and don't want to kill my system). What platform are you on?

Windows, Intel 155h.

It works on my M2 mac mini too. Hmm.

Running into a panic with this on the animated_fox example.
thread 'Compute Task Pool (9)' panicked at crates/bevy_pbr/src/render/mesh.rs:927:57:
index out of bounds: the len is 20 but the index is 20
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Encountered a panic in system `bevy_pbr::render::mesh::collect_meshes_for_gpu_building`!

backtrace
thread 'Compute Task Pool (9)' panicked at crates/bevy_pbr/src/render/mesh.rs:927:57:
index out of bounds: the len is 16 but the index is 21
stack backtrace:
   0: rust_begin_unwind
             at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:74:14
   2: core::panicking::panic_bounds_check
             at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:276:5
   3: <usize as core::slice::index::SliceIndex<[T]>>::index
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/slice/index.rs:301:10
   4: core::slice::index::<impl core::ops::index::Index<I> for [T]>::index
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/slice/index.rs:16:9
   5: <alloc::vec::Vec<T,A> as core::ops::index::Index<I>>::index
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/vec/mod.rs:3323:9
   6: bevy_pbr::render::mesh::RenderMeshInstanceGpuBuilder::update
             at ./crates/bevy_pbr/src/render/mesh.rs:927:57
   7: bevy_pbr::render::mesh::collect_meshes_for_gpu_building
             at ./crates/bevy_pbr/src/render/mesh.rs:1424:21
   8: core::ops::function::FnMut::call_mut
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:166:5
   9: core::ops::function::impls::<impl core::ops::function::FnMut<A> for &mut F>::call_mut
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:294:13
  10: <Func as bevy_ecs::system::function_system::SystemParamFunction<fn(F0,F1,F2,F3,F4,F5) .> Out>>::run::call_inner
             at ./crates/bevy_ecs/src/system/function_system.rs:998:21
  11: <Func as bevy_ecs::system::function_system::SystemParamFunction<fn(F0,F1,F2,F3,F4,F5) .> Out>>::run
             at ./crates/bevy_ecs/src/system/function_system.rs:1001:17
  12: <bevy_ecs::system::function_system::FunctionSystem<Marker,F> as bevy_ecs::system::system::System>::run_unsafe
             at ./crates/bevy_ecs/src/system/function_system.rs:793:19
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Encountered a panic in system `bevy_pbr::render::mesh::collect_meshes_for_gpu_building`!

Following up from Discord, I tested this branch on an Intel i5-1240P with the following Renderdoc settings:

Capturing once yielded:

With the following statistics:

I believe this is sufficient evidence that the feature works on Intel iGPUs, but I'm still learning this tooling so take with a grain of salt.

Looks like motion vectors are also broken with this (tested by adding the MotionVectorPrepass to the camera in many_foxes).
2024-12-10T00:12:26.608557Z ERROR wgpu::backend::wgpu_core: Handling wgpu errors as fatal by default
thread 'Compute Task Pool (8)' panicked at /home/evan/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-23.0.1/src/backend/wgpu_core.rs:2976:18:
wgpu error: Validation Error

Caused by:
  In RenderPass::end
    In a set_bind_group command
      BindGroup with 'skinned_motion_mesh_bind_group' label 1 expects 0 dynamic offset. However 1 dynamic offset were provided.

backtrace
stack backtrace:
   0: rust_begin_unwind
             at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:665:5
   1: core::panicking::panic_fmt
             at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:74:14
   2: wgpu::backend::wgpu_core::default_error_handler
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-23.0.1/src/backend/wgpu_core.rs:3050:5
   3: wgpu::backend::wgpu_core::ErrorSinkRaw::handle_error
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-23.0.1/src/backend/wgpu_core.rs:3034:21
   4: wgpu::backend::wgpu_core::ContextWgpuCore::handle_error_inner
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-23.0.1/src/backend/wgpu_core.rs:299:9
   5: wgpu::backend::wgpu_core::ContextWgpuCore::handle_error
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-23.0.1/src/backend/wgpu_core.rs:311:9
   6: <wgpu::backend::wgpu_core::ContextWgpuCore as wgpu::context::Context>::render_pass_end
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-23.0.1/src/backend/wgpu_core.rs:2976:13
   7: <T as wgpu::context::DynContext>::render_pass_end
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-23.0.1/src/context.rs:2682:9
   8: <wgpu::api::render_pass::RenderPassInner as core::ops::drop::Drop>::drop
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/wgpu-23.0.1/src/api/render_pass.rs:15:13
   9: core::ptr::drop_in_place<wgpu::api::render_pass::RenderPassInner>
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:574:1
  10: core::ptr::drop_in_place<wgpu::api::render_pass::RenderPass>
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:574:1
  11: core::ptr::drop_in_place<bevy_render::render_phase::draw_state::TrackedRenderPass>
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ptr/mod.rs:574:1
  12: core::mem::drop
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/mem/mod.rs:943:24
  13: <bevy_core_pipeline::prepass::node::PrepassNode as bevy_render::render_graph::node::ViewNode>::run::{{closure}}
             at ./crates/bevy_core_pipeline/src/prepass/node.rs:172:13
  14: core::ops::function::FnOnce::call_once{{vtable.shim}}
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5
  15: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:2454:9
  16: bevy_render::renderer::RenderContext::finish::{{closure}}::{{closure}}
             at ./crates/bevy_render/src/renderer/mod.rs:511:41
  17: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::future::future::Future>::poll
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:297:9
  18: <futures_lite::future::CatchUnwind<F> as core::future::future::Future>::poll::{{closure}}
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/futures-lite-2.3.0/src/future.rs:588:42
  19: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:272:9
  20: std::panicking::try::do_call
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:557:40
  21: __rust_try
  22: std::panicking::try
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:520:19
  23: std::panic::catch_unwind
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:358:14
  24: <futures_lite::future::CatchUnwind<F> as core::future::future::Future>::poll
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/futures-lite-2.3.0/src/future.rs:588:9
  25: async_executor::Executor::spawn_inner::{{closure}}
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-executor-1.13.0/src/lib.rs:250:20
  26: async_task::raw::RawTask<F,T,S,M>::run::{{closure}}
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-task-4.7.1/src/raw.rs:550:21
  27: core::ops::function::FnOnce::call_once
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:250:5
  28: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panic/unwind_safe.rs:272:9
  29: std::panicking::try::do_call
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:557:40
  30: __rust_try
  31: std::panicking::try
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:520:19
  32: std::panic::catch_unwind
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:358:14
  33: async_task::raw::RawTask<F,T,S,M>::run
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-task-4.7.1/src/raw.rs:549:23
  34: async_task::runnable::Runnable<M>::run
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-task-4.7.1/src/runnable.rs:781:18
  35: async_executor::State::run::{{closure}}::{{closure}}
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-executor-1.13.0/src/lib.rs:741:21
  36: <futures_lite::future::Or<F1,F2> as core::future::future::Future>::poll
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/futures-lite-2.3.0/src/future.rs:449:33
  37: async_executor::State::run::{{closure}}
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-executor-1.13.0/src/lib.rs:748:32
  38: async_executor::Executor::run::{{closure}}
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/async-executor-1.13.0/src/lib.rs:344:34
  39: futures_lite::future::block_on::{{closure}}
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/futures-lite-2.3.0/src/future.rs:99:19
  40: std::thread::local::LocalKey<T>::try_with
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:283:12
  41: std::thread::local::LocalKey<T>::with
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:260:9
  42: futures_lite::future::block_on
             at /home/me/.cargo/registry/src/index.crates.io-6f17d22bba15001f/futures-lite-2.3.0/src/future.rs:78:5
  43: bevy_tasks::task_pool::TaskPool::new_internal::{{closure}}::{{closure}}::{{closure}}::{{closure}}
             at ./crates/bevy_tasks/src/task_pool.rs:171:37
  44: std::panicking::try::do_call
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:557:40
  45: __rust_try
  46: std::panicking::try
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:520:19
  47: std::panic::catch_unwind
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panic.rs:358:14
  48: bevy_tasks::task_pool::TaskPool::new_internal::{{closure}}::{{closure}}::{{closure}}
             at ./crates/bevy_tasks/src/task_pool.rs:165:43
  49: std::thread::local::LocalKey<T>::try_with
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:283:12
  50: std::thread::local::LocalKey<T>::with
             at /home/me/.rustup/toolchains/stable-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/thread/local.rs:260:9
  51: bevy_tasks::task_pool::TaskPool::new_internal::{{closure}}::{{closure}}
             at ./crates/bevy_tasks/src/task_pool.rs:158:25
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
Encountered a panic in system `bevy_render::renderer::render_system`!

I fixed the motion vectors issue, but was unable to reproduce the animated_fox issue on either debug or release on my Windows laptop or Mac mini.

I fixed the motion vectors issue, but was unable to reproduce the animated_fox issue on either debug or release on my Windows laptop or Mac mini.

I can't reproduce the animated_fox crash after the latest main was merged in :shrug:
Motion vectors no longer crash but they also don't appear to be working for skinned meshes now.
Motion vector prepass texture once everything is rendered (left main, right this PR):

This seems fine to merge, but I'm doing a manual example run here to check for regressions. Ping me once that's done / tomorrow if I forget.

Ok, the skinned mesh motion vector thing should be fixed now.

I believe the CI failure is https://github.com/bevyengine/bevy/pull/15981.

Example run is green.


Implement govulncheck in CI

We should investigate and add govulncheck into our CI pipeline (https://pkg.go.dev/golang.org/x/vuln/cmd/govulncheck).

It's important to run it for every build configuration that we support.
I believe that checks should be run on every commit but also periodically to fetch new vulnerabilities from databse and compare them to existing code.
It's worth to familarize ourselves with all listed limitations.

Feel free to edit/update the issue.


SASS-1658 Added income section tests

Description

SASS-1658 Added income section tests

https://jira.tools.tax.service.gov.uk/browse/SASS-1658
Checklist PR Reviewer
Before Reviewing

[x]  Have you pulled the branch down?
[x]  Have you assigned yourself to the PR?
[x]  Have you moved the task to “in review” on JIRA?
[ ]  Have you checked to ensure all dependencies are up to date?
[ ] Have you checked to ensure its been rebased against the current version of main?

Whilst Reviewing

[ ]  Have you run the journey tests?
[ ]  Have you looked at the JIRA story to make sure all Acceptance Criteria has been met?

After Reviewing

[ ] Have you checked for merge conflicts or any changes in the current main that may affect the current pull request? i.e. does it need another rebase?
the current pull request?
[ ]  Have you checked to make sure there are no builds in the pipeline before you merge?
[ ]  Have you moved the task to “in pipeline” on Jira?

[x]  Have you addressed warnings where appropriate?
[x]  Have you rebased against the current version of main?

This needs merging with the employment-frontend and performance test changes

Please update:
uk.gov.hmrc:webdriver-factory from 0.23.0 to 0.25.0
I am not sure about the following though:
Sbt plugins: uk.gov.hmrc:sbt-auto-build 3.5.0 3.6.0


Enable multiple guard instances

I believe this resolves issue #74 in Guard::RSpec
I came across some very weird behaviour in the process of converting the module code to instantiable classes though. The specs rely on something I've never seen in Ruby before, that the value of $? after a system call is preserved going into a method on a Module (and presumably a Class) object, but not an instance of a class. Because of this, I had to trick Runner#rspec_command into running system "exit …".
The specs that were stubbing out Runner#system (inherited from Object) were also relying on the call being stubbed out in Runner#failure_exit_code_supported?, so I stubbed this private method out directly.
These spec changes are not ideal, but they did allow me to solve my immediate problem without going into a much bigger refactoring. A nice next step would be to extract the code that deals with system and the command generation into a separate object (and being able to mock this would probably help speed up the test runs considerably).

Hi Ash, thanks for this pull request (and sorry for the lame response time, I was quite busy with the launch of the new SublimeVideo).
I think I'm ok with your commits, can you just pull the new master commit to your branch so I can automatically merge this request from github? Thanks!

Hi Thibaud
No problem, it wasn't urgent. Sublime looks pretty neat :)
I've merged the changes. The only conflict was in Runner#failure_exit_code_supported?. Oddly, the specs passed whichever version I used, but I'm 99% sure I have the correct one (@hedgehog's).
Let me know if you need anything else to make it mergeable.
Cheers
Ash

Looks good to me.  The spec's do pass either way - the reason is that If you have activate 'run all after passing' then the binstubs don't get used.... there should be a spec for this, but I couldn't see a spec for this use case, so I just made the smallest patch that worked. It also wan't clear to me, in the time available, how to spec this.

Hi hedgehog
I had a similar problem writing a spec for this. I have no idea how to write and end-to-end test for multiple Guard plugins! Cucumber + Aruba + some async touch commands I guess. I think there's a way you could do it by just instantiating multiple Guard::RSpec objects and simulating the Guard-Guard::RSpec interactions, but this seems a bit fragile absent a contract from the Guard project itself.
Ash


Migration v9 -> v10 - pom.xml, docreatejar

Hello!
I want to migrate from v9 to v10 and most of the process is going well. However I'm missing two things that I can't find it the docs:

https://docs.keycloakify.dev/v/v9/build-options#docreatejar - is there an equivalent for this option in v10?
pom.xml file creation - in v9 it was placed directly in the dist_keycloak folder after the build, now I can only find it in the generated .jar file. Is it possible to generate pom.xml file similarly to the v9?

Thank you!

I was also looking for 1.

Hello @500E,

No, it's no longer possible. The theme dosen't work anymore just by copying the assets manually into Keycloak. The proper way to load extentions in Keycloak is to put a jar in /opt/keycloak/providers and run bash /opt/keycloak/bin/kc.sh build then start Keycloak.

No it's not possible.

Thoses two things can be addressed just by running jar -xf keycloak-theme.jar.
Maybe you can describe to me what you are trying to acheive and I can tell you what's the best way to do it.

Hey @garronej,
I am a colleague of @500E. We are injecting repositories and distributionManagement sections into the pom.xml to reference our private maven repository and run mvn install and mvn deploy to build and publish the JAR to our private repo. The versioned publishing enables us to pull the JAR during the deployment of the Keycloak server.
We are in the process of changing our deployment process and I think we will be able to work around this issue with a monorepo setup.
On a different note: could you please elaborate on the following:

The theme doesn't work anymore just by copying the assets manually into Keycloak.

Hello @iliascholl-up42,
Can't you use this to publish the JAR after the JAR is built?

On a different note: could you please elaborate on the following:

This extension is needed for the password policies to be available: https://github.com/jcputney/keycloak-theme-additional-info-extension
We got this PR merged in Keycloak so it won't be required anymore starting with Keycloak 26: https://github.com/keycloak/keycloak/pull/32625
We also need https://github.com/p2-inc/keycloak-account-v1 for pepole implementing the multi page flavor of the account theme

@garronej thanks for the explanation, it makes sense!

Can't you use https://github.com/keycloakify/keycloakify/issues/623#issuecomment-2314675038 to publish the JAR after the JAR is built?

This does indeed work for us! I have initially dismissed this approach since we are deploying to GCP Artifact Registry and need a maven extension to do so. A quick search brought me to https://stackoverflow.com/a/71177199 explaining that one can use Maven Core Extensions for this.
We should be good!

Great thanks for the feedback.
Just a note https://github.com/p2-inc/keycloak-account-v1 is included in the jar only if you have explicitely opted in for the Multi-Page account theme.


Proxy documentation for Flask

I found that when Flask was deployed behind a nginx proxy Sentry was receiving the wrong REMOTE_ADDR from exceptions.
By using ProxyFix on the app.wsgi_app (with nginx forwarding the correct headers) Sentry is able to get the correct REMOTE_ADDR from exceptions, and I've added some documentation on how to set that up.

Thanks for this.


annotations and semicolon

Annotations are transpiled with semicolons
self class

@:pippa(123)
def self.main()
  trace("Hello World")
end

package ;using Lambda; class HelloWorld {

@:pippa(123);
static public function main(){
  trace("Hello World");
};
}

I think that it is because you have curlys in annotation and transpiler is thinking that it is method call. Thank you for report, I will look at it.

works now thanks :-)


[TF2.0] Not JSON Serializable error wasn thrown when using tf.keras.activations operators in keras model.

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Windows 10 x64 1809
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary): pip
TensorFlow version (use command below): tensorflow-gpu 2.0.0a0
Python version: 3.6.7
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version: 10
GPU model and memory: Geforce 1070

Describe the current behavior
When I used tf.keras.activations operators in my keras model, serialization of model was failed due to Not JSON Serializable error.
Describe the expected behavior
It should be serialized without any error.
Code to reproduce the issue
from tensorflow import keras
from tensorflow.keras import layers

inputs = keras.Input(shape=(784,), name='digits')
x = layers.Activation('relu')(inputs)
# x = keras.activations.relu(inputs)
outputs = layers.Dense(10, activation='softmax', name='predictions')(x)

model = keras.Model(inputs=inputs, outputs=outputs, name='3_layer_mlp')
model.summary()

model.save('path_to_my_model.h5')

If you changed from Activation() to relu, it failed to serialize.

I have slightly edited your code to be consistent with python tf.keras and was able to reproduce the error using TF-gpu 2.0 alpha.
import tensorflow as tf
#from tensorflow import keras
#from tensorflow.keras import layers

inputs = tf.keras.Input(shape=(784,), name='digits')
#x = tf.keras.layers.Activation('relu')(inputs)
x = tf.keras.activations.relu(inputs)
outputs = tf.keras.layers.Dense(10, activation='softmax', name='predictions')(x)

model = tf.keras.Model(inputs=inputs, outputs=outputs, name='3_layer_mlp')
model.summary()

model.save('path_to_my_model.h5')

Output:
---> 13 model.save('path_to_my_model.h5')
TypeError: ('Not JSON Serializable:', b'\n\x06Relu_8\x12\x04Relu\x1a\tdigits_25*\x07\n\x01T\x12\x020\x01')

I got the same error, but with:

tf.keras.backend.expand_dims
tf.keras.backend.squeeze
tf.expand_dims
tf.squeeze

Additionally, using "+" operator instead of tf.keras.layers.Add makes this issue same.

I am facing the same issue, any suggestions or solutions for work around for now ??

I am having the same issue when using tf.concat in an otherwise keras-only model (can't use keras Concatenations due to issue #30355 ).
Only work around I have found so far is to use model.save_weights(). When loading, you need to redefine the model and then use model.load_weights()

Having same issue with tf.transpose :
W0717 09:24:35.629342 14908 summary_ops_v2.py:1110] Model failed to serialize as JSON. Ignoring... ('Not JSON Serializable:', b'\n\ttranspose\x12\tTranspose\x1a\ndense/Relu\x1a\x0etranspose/perm*\x0b\n\x05Tperm\x12\x020\x03*\x07\n\x01T\x12\x020\x01')
Thus callbacks.ModelCheckpoint fails to backup my model and all I get is a model file of 6 KB.

Same problem here. Is this being worked on?

Was able to repro and have a fix out for this, should be in in a day or two

Hello,
Any news? Thanks

Hello,
Any news? Thanks

Should be fixed: https://github.com/tensorflow/tensorflow/commit/7cc180f107f142432358ac33787466de90afd776

Closing this issue since its fixed in latest tf nightly build '2.0.0-dev20190802'
Thanks!

Had the problem callbacks.ModelCheckpoint, setting save_weights_only=True solved the problem for me.

Had the problem callbacks.ModelCheckpoint and ModelCheckpoint, setting save_weights_only=True solved the problem for me.

@yassinetb Did you have any solution for the error "TypeError: ('Not JSON Serializable:', tf.float32)" from setting save_weights_only=False

I am facing the same issue using tf.keras.callbacks.ModelCheckpoint . Any solution ?


Reduce dependencies

Use pipe operator %>% from dplyr instead of magrittr to reduce dependencies and facilitate maintenance; code was simplified accordingly.
Ready for merge if approved by @wincowgerDEV.

Good call, looks like dplyr already imports %>% directly from magittr so no need to import twice, plus lots of fun stuff in dplyr.
https://github.com/tidyverse/dplyr/blob/master/NEWS.md
I read through the code and it looks great! @zsteinmetz


Remove packager

Remove the WalletWasabi.Packager project.

What are the commands to generate a macos .dmg  now?

How can I compile from sources to generate a dmg without the packager and without the macos signing crap now that packager is removed?

We have automatized the release to avoid manual steps. The release script can be called with dmg parameter as follow:
./Contrib/release.sh dmg

However, that script does it all included the "the macos signing crap", notarization and other steps. You can modify the script and remove lines that you don't want

yeah, thanks.


Embed usage data/data visualization somewhere on dlms for easy viewing

Description:
Currently, there is no easy way to access usage data for the DLMS. A dedicated page or dashboard to display usage data would be beneficial.
Requirements:

Create a new page or dashboard in the DLMS that shows usage data.
Display files being accessed, including the device, content name, content language, and time accessed.
Show lists of the most and least accessed files and popular search terms.


acs-engine upgrade fails: RoleAssignmentUpdateNotPermitted

Is this a request for help?:
YES

Is this an ISSUE or FEATURE REQUEST? (choose one):
ISSUE

What version of acs-engine?:
Version: canary
GitCommit: 13973d0
GitTreeState: clean
This version of the acs-engine was used for creation and attempted upgrade of the cluster.

Orchestrator and version (e.g. Kubernetes, DC/OS, Swarm)
Kubernetes
What happened:
Upgrading the cluster fails:
INFO[0465] Finished ARM Deployment (master-18-05-06T22.27.22-1289261050). Error: resources.DeploymentsClient#CreateOrUpdate: Failure sending request: StatusCode=200 -- Original Error: Long running operation terminated with status 'Failed': Code="DeploymentFailed" Message="At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-debug for usage details."
INFO[0465] Error creating upgraded master VM: k8s-master-87921648-0
FATA[0465] Error upgrading cluster: resources.DeploymentsClient#CreateOrUpdate: Failure sending request: StatusCode=200 -- Original Error: Long running operation terminated with status 'Failed': Code="DeploymentFailed" Message="At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-debug for usage details."

The deployment failure (according to azure portal) is:
{
  "error": {
    "code": "RoleAssignmentUpdateNotPermitted",
    "message": "Tenant ID, application ID, principal ID, and scope are not allowed to be updated."
  }
}

The error is caused by this request (see the full event below):
"statusCode": "BadRequest",
"statusMessage": "{\"error\":{\"code\":\"RoleAssignmentUpdateNotPermitted\",\"message\":\"Tenant ID, application ID, principal ID, and scope are not allowed to be updated.\"}}",
"serviceRequestId": "9a803e39-19c3-41cd-847c-5150ac6e2463",
"requestbody": "{\"properties\":{\"principalId\":\"cf117553-6b5f-4b2d-8c90-92b6118513d5\",\"roleDefinitionId\":\"/subscriptions/*****/providers/Microsoft.Authorization/roleDefinitions/b24988ac-6180-42a0-ab88-20f7382dd24c\"}}"

Previously, it was setup using the following configuration:
(This is the same setup as in issue #2869)
{
  "apiVersion": "vlabs",
  "properties": {
    "orchestratorProfile": {
      "orchestratorType": "Kubernetes",
      "orchestratorVersion": "1.10.1",
      "kubernetesConfig": {
        "enableDataEncryptionAtRest": false,
        "useManagedIdentity": true,
        "enableRbac": true,
        "networkPolicy": "calico",
        "privateCluster": {
            "enabled": true
        },
        "dnsServiceIP": "<IP_ADDRESS>",
        "serviceCidr": "<IP_ADDRESS>/18",
        "clusterSubnet": "<IP_ADDRESS>/17",
        "etcdDiskSizeGB": "256",
        "dockerEngineVersion": "17.05.*"
      }
    },
    "aadProfile": {
      "serverAppID": "******",
      "clientAppID": "******",
      "tenantID": "******",
      "adminGroupID": "******"
    },
    "masterProfile": {
      "count": 1,
      "dnsPrefix": "env",
      "vmSize": "Standard_A4_v2",
      "vnetSubnetId": "/subscriptions/******/resourceGroups/domain-env-kubernetes/providers/Microsoft.Network/virtualNetworks/env-k8s-network/subnets/env-k8s-master-subnet",
      "firstConsecutiveStaticIP": "<IP_ADDRESS>",
      "vnetCidr": "<IP_ADDRESS>/16"
    },
    "agentPoolProfiles": [
      {
        "name": "agent",
        "count": 1,
        "vmSize": "Standard_A4_v2",
        "vnetSubnetId": "/subscriptions/******/resourceGroups/domain-env-kubernetes/providers/Microsoft.Network/virtualNetworks/env-k8s-network/subnets/env-k8s-worker-subnet",
        "availabilityProfile": "AvailabilitySet"
      }
    ],
    "linuxProfile": {
      "adminUsername": "******",
      "ssh": {
        "publicKeys": [
          {
            "keyData": "******"
          }
        ]
      }
    }
  }
}

We used these commands to deploy the cluster:
acs-engine generate template.json
az group deployment validate --resource-group domain-env-kubernetes --template-file /path_to/_output/env/azuredeploy.json --parameters /path_to/_output/env/azuredeploy.parameters.json
az group deployment create --name domain-env-k8s-cluster --resource-group domain-env-kubernetes --template-file /path_to/_output/env/azuredeploy.json --parameters /path_to/_output/env/azuredeploy.parameters.json

The rollout was successful and the cluster fully functional.

DEBU[0000] Resolving tenantID for subscriptionID: *****
DEBU[0000] Attempting to load token from cache. path="*****"
DEBU[0001] Saved token to cache. path="*****"
DEBU[0003] Already registered for "Microsoft.Compute"
DEBU[0003] Already registered for "Microsoft.Storage"
DEBU[0003] Already registered for "Microsoft.Network"
DEBU[0005] Resolving tenantID for subscriptionID: *****
DEBU[0005] Attempting to load token from cache. path="*****"
DEBU[0005] Saved token to cache. path="*****"
DEBU[0007] Already registered for "Microsoft.Compute"
DEBU[0007] Already registered for "Microsoft.Storage"
DEBU[0007] Already registered for "Microsoft.Network"
INFO[0007] Name suffix: 87921648
INFO[0007] Gathering agent pool names...
INFO[0008] Evaluating VM: k8s-agent-87921648-0 in pool: agent...

INFO[0008] Adding Agent VM: k8s-agent-87921648-0, orchestrator: Kubernetes:1.10.1 to pool: agent (AgentVMs)

INFO[0008] Master VM name: k8s-master-87921648-0, orchestrator: Kubernetes:1.10.1 (MasterVMs)

INFO[0008] Upgrading to Kubernetes version 1.10.2

INFO[0008] Master nodes StorageProfile: ManagedDisks
INFO[0008] Prepping master nodes for upgrade...
INFO[0008] Resource count before running NormalizeResourcesForK8sMasterUpgrade: 14
INFO[0008] Removing nic: [concat(variables('agentVMNamePrefix'), 'nic-', copyIndex(variables('agentOffset')))] from template
INFO[0008] Evaluating if agent pool: agent, resource: [concat(variables('agentVMNamePrefix'), copyIndex(variables('agentOffset')))] needs to be removed
INFO[0008] agentPoolsToPreserve: map[]...
INFO[0008] Removing agent pool: agent, resource: [concat(variables('agentVMNamePrefix'), copyIndex(variables('agentOffset')))] from template
INFO[0008] Evaluating if extension: [concat(variables('agentVMNamePrefix'), copyIndex(), '/ManagedIdentityExtension')] needs to be removed
INFO[0008] agentPoolsToPreserve: map[]...
INFO[0008] Removing extension: [concat(variables('agentVMNamePrefix'), copyIndex(), '/ManagedIdentityExtension')] from template
INFO[0008] Evaluating if extension: [concat(variables('agentVMNamePrefix'), copyIndex(variables('agentOffset')),'/cse', '-agent-', copyIndex(variables('agentOffset')))] needs to be removed
INFO[0008] agentPoolsToPreserve: map[]...
INFO[0008] Removing extension: [concat(variables('agentVMNamePrefix'), copyIndex(variables('agentOffset')),'/cse', '-agent-', copyIndex(variables('agentOffset')))] from template
INFO[0008] Evaluating if agent pool: master, resource: [concat(variables('masterVMNamePrefix'), copyIndex(variables('masterOffset')))] needs to be removed
INFO[0008] Evaluating if extension: [concat(variables('masterVMNamePrefix'), copyIndex(), '/ManagedIdentityExtension')] needs to be removed
INFO[0008] Evaluating if extension: [concat(variables('masterVMNamePrefix'), copyIndex(variables('masterOffset')),'/cse', '-master-', copyIndex(variables('masterOffset')))] needs to be removed
INFO[0008] Resource count after running NormalizeResourcesForK8sMasterUpgrade: 10
INFO[0008] Total expected master count: 1
INFO[0008] Master nodes that need to be upgraded: 1
INFO[0008] Master nodes that have been upgraded: 0
INFO[0008] Starting upgrade of master nodes...
INFO[0008] masterNodesInCluster: 1
INFO[0008] Upgrading Master VM: k8s-master-87921648-0
INFO[0008] fetching VM: domain-env-kubernetes/k8s-master-87921648-0
INFO[0008] found nic name for VM (domain-env-kubernetes/k8s-master-87921648-0): k8s-master-87921648-nic-0
INFO[0008] deleting VM: domain-env-kubernetes/k8s-master-87921648-0
INFO[0008] waiting for vm deletion: domain-env-kubernetes/k8s-master-87921648-0
INFO[0176] deleting nic: domain-env-kubernetes/k8s-master-87921648-nic-0
INFO[0176] waiting for nic deletion: domain-env-kubernetes/k8s-master-87921648-nic-0
INFO[0187] deleting managed disk: domain-env-kubernetes/k8s-master-87921648-0_OsDisk_1_4fafee6b5a82457a962f679b6e65fcd3
INFO[0278] Master offset: 0

INFO[0278] Master pool set count to: 1 temporarily during upgrade...

INFO[0278] Starting ARM Deployment (master-18-05-06T22.27.22-1289261050). This will take some time...
INFO[0465] Finished ARM Deployment (master-18-05-06T22.27.22-1289261050). Error: resources.DeploymentsClient#CreateOrUpdate: Failure sending request: StatusCode=200 -- Original Error: Long running operation terminated with status 'Failed': Code="DeploymentFailed" Message="At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-debug for usage details."
INFO[0465] Error creating upgraded master VM: k8s-master-87921648-0
FATA[0465] Error upgrading cluster: resources.DeploymentsClient#CreateOrUpdate: Failure sending request: StatusCode=200 -- Original Error: Long running operation terminated with status 'Failed': Code="DeploymentFailed" Message="At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-debug for usage details."

What you expected to happen:
Master and agents nodes would be upgrade to Kubernetes version 1.10.2
How to reproduce it (as minimally and precisely as possible):
As described in what happend
This error can be reproduced. If you need further assistance, please do not hesitate to contact me.
Anything else we need to know:

Custom VNET
Tested with multiple master and multiple node setup as well, same result.

Quick update:

the issue is related to us applying "useManagedIdentity": true
role assignments apparently do not get deleted when their principal (here: the VM) is deleted
the new master node that is being created shall get the contributor role assignment again. But since this assignment still exists (guid calculation based on the name that did not change), we are getting the error described above

I am currently in the progress of creating a PR (cleanup assignments when deleting the VM) for this issue, but even with this being fixed I run into the next error, namely #2560. Very frustrating 😞


styled error message

This needs review...might need to do it differently - it feels a little smelly (to quote)

is this old now?

I don't know whats going on here.

was this the error on the 'return to application page' (https://staging.et.dsd.io/apply/session/new) when the claim number entered has already been submitted?


Rehaul of Makefile to enable easier dependency upgrades

Update of the dependency toolchain with the following changes:

Specify bare minimum dependencies in Pipfile
Run make upgrade to remove requirement files and lock file. This will further create new requirement files for each core and development dependencies. For compatibility, the script also removes the first line that pipenv creates.
If you want to install the package for development reasons, you can run make install, or make (if you wish to upgrade and install in one go).

Generally, use the Pipfile for dependency housekeeping and pip for installing the package.

As discussed directly, works for me after removing local editable in pipfile.
Consider also updating .github/workflows/pytest.yml to run make?

So now that we have decided against the Pipfile, I would also remove the Makefile, Pipfiles, and the requirements, because the building already works as is and we have no dependency toolchain anymore.
This also requires no adjustment of the Github actions.

@tomwallis please note that I had to change GH action to install development dependencies via pip install -e ".[dev]".


CertStore: Implement a friendlier subscribe method

I ended up not needing this but I wanted to get some feedback on it as it's significantly friendlier than the current SubscribeForNewCerts method. Basically, this one doesn't force the subscriber to implement resubscribe/catchup logic manually.

I feel that in most cases the cert subscriber doesn't care about the complete sequence of certs, only the most recent one. I would for sure keep this branch around though as the code might be useful in the future.

Yeah, that's where I ended up. However, light clients (and lotus APIs in general) will likely want this kind of API.

Closing in favor of https://github.com/filecoin-project/go-f3/pull/646. Every time I've wanted to subscribe for certificates, I've only cared about the latest. Especially because certificates are usually stored inside the certstore anyways.


disk space on the behemoths is tight

we keep running out of space. it's possible to keep up with it (as doc'ed), but it's annoying
the root cause is that we have three active development branches and four community builds now, but only the same amount of disk space on the behemoths as when we had two and two, respectively
@adriaanm says of cranking up the disk space:

It's possible, but involves redoing the workers from scratch

which is a pain, so just limping along a couple more months, until we can shut the 2.11 stuff down, is certainly an option.

https://github.com/scala/community-builds/commit/81a44e7c137e0be522aee4f5b33ab470445986fb has been a huge help
a fresh community build run, where everything must be rebuilt because the Scala version changed, occasionally still runs out of space (and may incidentally cause a PR validation job to run out of space too, if one happens to be running at the same time)
...but when it happens the problem is transient because a bunch of files get deleted after the failure and then the next run is fine

bump. @adriaanm is working on overhauling the Jenkins config so now is a good time to tackle this.
I don't care whether it's more behemoths or bigger behemoths, either way is fine. (at the team meeting just now, Adriaan said he thinks bigger behemoths would be easier.)
there is more and more pressure to have more space:

the 2.12 build is hugely bigger than it used to be
we're up to four builds now: 2.11, 2.11 JDK 8, 2.12, 2.13
plus there is a nascent JDK 9 community build we want to expand and start running regularly
I would reallllllly loooooove to have space to split the community builds into "stable" and "bleeding edge" versions. the stable ones would stay frozen most of the time, and would be the ones included in the release-main jobs. the bleeding edge jobs would be the crazy-town ones where everything is continuously changing

Increased to 400gb
On Tue, Feb 6, 2018 at 22:12 Seth Tisue<EMAIL_ADDRESS>wrote:

bump. @adriaanm https://github.com/adriaanm is working on overhauling
the Jenkins config so now is a good time to tackle this.
I don't care whether it's more behemoths or bigger behemoths, either way
is fine. (at the team meeting just now, Adriaan said he thinks bigger
behemoths would be easier.)
there is more and more pressure to have more space:

the 2.12 build is hugely bigger than it used to be
we're up to four builds now: 2.11, 2.11 JDK 8, 2.12, 2.13
plus there is a nascent JDK 9 community build we want to expand and
start running regularly
I would reallllllly loooooove to have space to split the community
builds into "stable" and "bleeding edge" versions. the stable ones would
stay frozen most of the time, and would be the ones included in the
release-main jobs. the bleeding edge jobs would be the crazy-town ones
where everything is continuously changing

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/scala/scala-jenkins-infra/issues/209#issuecomment-363565960,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAFjy4C1nU8IOxjbNdUOt3Xn2OY-zK3mks5tSMAfgaJpZM4LTR--
.

and we have THREE MIGHTY BEHEMOTHS now.


Change razor source generator to depend on <IP_ADDRESS>

This will enable the 8.0.300 SDK to work inside of 17.9 and 17.10. That puts us in compliance with our support matrix
https://learn.microsoft.com/en-us/dotnet/core/porting/versioning-sdk-msbuild-vs#targeting-and-support-rules

@dotnet/razor-compiler PTAL.

Merging to get the insertion so I can submit the QB bug.


Patching Error On Mac

I have SideQuest INstalled and My Quest 2 is Plugged in. This is the issue that pops up when I attempt to "Patch My App!"
Signing APK (this might take a while) . . .
Signing the APK failed with zipalign enabled. Falling back to non-zipalign . . .
Patching failed!: QuestPatcher.Core.SigningException: Signed APK at /var/folders/2r/2fwdq09s3331t8_5c81s151w0000gn/T/QuestPatcher/patching/patched-debugSigned.apk was missing, signing must have failed
at QuestPatcher.Core.ApkTools.SignApk(String apkPath, Boolean useZipAlign) in /Users/runner/work/QuestPatcher/QuestPatcher/QuestPatcher.Core/ApkTools.cs:line 119
at QuestPatcher.Core.Patching.PatchingManager.PatchApp() in /Users/runner/work/QuestPatcher/QuestPatcher/QuestPatcher.Core/Patching/PatchingManager.cs:line 393
at QuestPatcher.ViewModels.PatchingViewModel.StartPatching() in /Users/runner/work/QuestPatcher/QuestPatcher/QuestPatcher/ViewModels/PatchingViewModel.cs:line 59

Please send a full log by going to the tools tab, clicking Open Logs Folder and sending the log file here.
I cannot help without more information.

log.log
Hope this works

Sorry I commented But I don't think I replied So I don't know if it alerted you
log.log

Updating Java should fix this issue

My Mac says It has the recommended version of Java, Java 8, update 291.

Exception in thread "main" java.lang.UnsupportedClassVersionError: at/favre/tools/apksigner/SignTool : Unsupported major.minor version 52.0 - the signer isn't convinced you have Java 8. I'd uninstall and reinstall just to be sure.

I reinstalled Java and questpatcher, wasnt quite sure which one you meant, I followed the website instructions on javas website. the error still apears.
log.log

Hmm, I am not sure at this point. In the log, the java version installed cannot load Java 8 code, which is needed for QuestPatcher to sign the APK. Not much I can do really if an older java version is installed, even after a java reinstall and a reboot.

I have a windows laptop from 2015, i don't use it because the screens broken but i can plug it into a monitor, do i have to install sidequest if I do it from there?

Sorry Im kinda Picking at scraps here I really wanted these mods.

The windows laptop might work, go ahead and try it.

Closing since this isn't a QP issue.


Unable to load transitive dependency for cake addin

As discussed with Gary on gitter, here the issue report to my problem, which looks like this:
What You Are Seeing?
I have a cake addin targeting cake 0.30.0 that relies on a private .net standard 2.0 library that i have written and compiled, which in turn relies on ClosedXML 0.93.1.
When running a cake script using my addin, it fails when trying to load that addin, telling me it can't find the file, even though its physically available in the tools/Addins/ folder.
What is Expected?
That i can run my cake script without setting UseInProcessClient to true, since that doesnt support loading packages from a private NuGet feed (yet).
What version of Cake are you using?
0.30.0
Are you running on a 32 or 64 bit system?
64bit
What environment are you running on?  Windows? Linux? Mac?
Windows
Are you running on a CI Server?  If so, which one?
nope
How Did You Get This To Happen? (Steps to Reproduce)

download Reproduction.zip
extract it
run the build.ps1 file in .\Reproduction\StandardLibrary
[EDIT] you might have to alter the path to the local nuget feed from build.cake file in .\Reproduction\StandardLibrary to a folder that exists on your system
run the actual build.ps1 file in .\Reproduction\CakeScript

Output Log
german build.log with fusion.log enabled

@Insire build.cake in .\Reproduction\Cakescript\ has the following addin directive:
#addin "nuget:?package=StandardLibrary&version=<IP_ADDRESS>"

In order to load dependencies, you must add loaddependencies=true, like this:
#addin "nuget:?package=StandardLibrary&version=<IP_ADDRESS>&loaddependencies=true"

This is however only possible with the in-process NuGet Client. You however say:

run my cake script without setting UseInProcessClient to true, since that doesnt support loading packages from a private NuGet feed (yet).

I would however say that in-process NuGet client supports private feeds, you'd however need to add the feed to a NuGet.Config file (use either apikey or packageSourceCredentials as specified here) and place it in your root. NOTE! DO NOT specify the feed in your #addin directive (there's a known issue where credentials won't be picked up if feed is specified in the directive).
Another way, that doesn't include loaddependencies or in-process NuGet client is to specify all the dependencies (in correct order) as #addin directives. In your case that would look something like:
#addin "nuget:?package=System.IO.Packaging&version=4.0.0"
#addin "nuget:?package=System.IO.FileSystem.Primitives&version=4.0.1"
#addin "nuget:?package=FastMember.Signed&version=1.3.0"
#addin "nuget:?package=ExcelNumberFormat&version=1.0.3"
#addin "nuget:?package=DocumentFormat.OpenXml&version=2.7.2"
#addin "nuget:?package=ClosedXML&version=0.93.1"
#addin "nuget:?package=StandardLibrary&version=<IP_ADDRESS>"

Please let me know if any of the above solved the problems you were seeing. Thanks!

Thanks for your insight, will report back on this later.

Allright, i tried adding the dependencies of ClosedXML and ClosedXML itself explicitly as addin to the cake script and that worked as described. Thanks for your help!


Role-Based Panel Display

Its should support Role-Based Panel Display which can help user control

Basic Role Based Panel permission control has been completed, this feature will be finish in next version

Users who have migrated from the old version may encounter the problem that ordinary members cannot display all panels. They only need to increase the permissions of everyone in the permission settings to view the panels.


Has anyone used this with Robolectric?

I have a project that I've implemented couchbase-lite-android and it works very well, however.. I've been trying to add in Robolectric to work on adding unit and component tests but have not had any luck getting these two to work together.  Currently I'm receiving the following issue.
DEBUG: Loading resources for android from jar:C:\Users\brad.m2\repository\org\robolectric\android-all\4.3_r2-robolectric-0\android-all-4.3_r2-robolectric-0.jar!/res...
java.lang.UnsatisfiedLinkError: no com_couchbase_touchdb_TDCollateJSON in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1886)
    at java.lang.Runtime.loadLibrary0(Runtime.java:849)
    at java.lang.System.loadLibrary(System.java:1088)
    at com.couchbase.touchdb.TDCollateJSON.<clinit>(TDCollateJSON.java:36)
    at com.couchbase.lite.android.AndroidSQLiteStorageEngine.open(AndroidSQLiteStorageEngine.java:46)
    at com.couchbase.lite.Database.open(Database.java:911)
    at com.couchbase.lite.Manager.getDatabase(Manager.java:227)
    at com.snapterm.core.models.transaction.TransactionsDb.initDatabase(TransactionsDb.java:61)
    at com.snapterm.core.models.transaction.TransactionsDb.<init>(TransactionsDb.java:49)
    at com.snapterm.core.models.transaction.TransactionsDb.getInstance(TransactionsDb.java:41)
    at com.snapterm.core.SnapTerm.onCreate(SnapTerm.java:42)
    at org.robolectric.internal.ParallelUniverse.setUpApplicationState(ParallelUniverse.java:164)
    at org.robolectric.RobolectricTestRunner.setUpApplicationState(RobolectricTestRunner.java:430)
    at org.robolectric.RobolectricTestRunner$2.evaluate(RobolectricTestRunner.java:236)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
    at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
    at org.robolectric.RobolectricTestRunner$1.evaluate(RobolectricTestRunner.java:177)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
    at org.junit.runner.JUnitCore.run(JUnitCore.java:160)
    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:74)
    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:211)
    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:67)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)

I haven't had any luck fixing this error no matter how I go about manually trying to load this lib.  I believe it's a current limitation with Robolectric finding native libs but am curious if anyone has tried these two together.

I was able to get this working, I had to pull down couchbase-lite-native-java, build it, and check in the compiled library like so:

I also had to change the storage engine factory when creating my Manager like so:

        return new Manager(new AndroidContext(this) {
            @Override public SQLiteStorageEngineFactory getSQLiteStorageEngineFactory() {
                //use this storage factory because the Android storage factory doesn't work in the JVM
                return new JavaSQLiteStorageEngineFactory();
            }
        }, Manager.DEFAULT_OPTIONS);

@sberan I am looking to build the libCouchbaseLiteJavaNative.dylib; but I can't seem to find instructions for the osx. Would you mind sharing some info on the same?

@vinovarkey, you don't have to build the library by your self, Download the Java version of CouchBase Lite (from here) and take out the native files from jars. Or you may just directly use the jar files on your code

Well, In order to use Robolectric and Couchbase Lite all you have to do are the following steps

Add these dependencies to your build.gradle

    testCompile 'com.couchbase.lite:couchbase-lite-java:1.4.0'
    testCompile 'com.couchbase.lite:couchbase-lite-java-sqlcipher:1.4.0'

as @sberan said, create the Manager class this way

        return new Manager(new AndroidContext(this) {
            @Override public SQLiteStorageEngineFactory getSQLiteStorageEngineFactory() {
                //use this storage factory because the Android storage factory doesn't work in the JVM
                return new JavaSQLiteStorageEngineFactory();
            }
        }, Manager.DEFAULT_OPTIONS);


use bit-appropriate array for palette lookup tables

PR Checklist

[x] Brief description of changes
[x] Links to any relevant issues
[ ] Required status checks are passing
[ ] User cases if changes impact the user's experience
[x] @mention a maintainer to request a review

Addresses https://github.com/OHIF/Viewers/issues/1689. Instead of using a Uint8Array for all lookup table byte arrays, first check to see whether the palette colors are 8 or 16 bits, and use the appropriately sized Uint array. Thanks @swederik.

Just read the original issue, nice catch, thanks!


Run redirect_dns after network interfaces are configured

I experienced that resolution on the guest would not work with Virtualbox.
The problem is that ConfiguredDnsServers reads /etc/resolv.conf before the interfaces are configured. And when Virtualbox configures the interfaces that file is changed again. SoAction::RedirectDns creates iptables entries for an IP that's not the nameserver anymore.
Now I've copied a hack from Action::Setup to run the DNS redirection after the interfaces are set up.
The semantics in Plugin are a bit strange now - we register the action for pre_boot_actions, but the main work runs much later.
This works for Virtualbox, I don't have other platforms. But I think it should work too, as it's also used in Action::Setup.
@phinze wdyt?

@njam LGTM - yeah those two method names are a bit weird now, but if it makes things work i'm +1 for merge and release