How do I retrieve the antiforgery token in RC2 ?

Hi
With .NET Core RC1 the following code to validate an antiforgery token worked.  I can see that the api has changed in RC2
RC1 Working code
using Microsoft.AspNet.Antiforgery;
using Microsoft.AspNet.Mvc;
using Microsoft.AspNet.Mvc.Filters;
using Microsoft.Extensions.OptionsModel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace FortMembership.Filters
{

    public class ValidateAntiForgeryHeaderToken : TypeFilterAttribute
    {
        public ValidateAntiForgeryHeaderToken() : base(typeof(ValidateAntiForgeryHeaderTokenImpl))
        {
        }

        // see https://docs.asp.net/en/latest/mvc/controllers/filters.html
        //
        // If you have a simple filter that doesn’t require any arguments, but which has constructor dependencies that need to be filled by DI,
        // you can inherit from TypeFilterAttribute, allowing you to use your own named attribute on classes and methods (instead of [TypeFilter(typeof(FilterType))]).
        //

        private class ValidateAntiForgeryHeaderTokenImpl : IAsyncAuthorizationFilter
        {
            private readonly IAntiforgery _antiforgery;

            public readonly string verificationToken = "X-VerificationToken";
            public readonly string antiforgeryCookieName;

            public ValidateAntiForgeryHeaderTokenImpl(IAntiforgery antiforgery, IOptions<AntiforgeryOptions> antiforgeryOptions)
            {
                _antiforgery = antiforgery;
                antiforgeryCookieName = antiforgeryOptions.Value.CookieName; // if not specified this is autogenerated by mvc
            }

            public Task OnAuthorizationAsync(AuthorizationContext context)
            {
                string headerToken = context.HttpContext.Request.Headers[verificationToken];
                if (headerToken != null)
                {
                    string antiForgeryCookieValue = context.HttpContext.Request.Cookies[antiforgeryCookieName];
                    _antiforgery.ValidateTokens(context.HttpContext, new AntiforgeryTokenSet(headerToken, antiForgeryCookieValue)); // throws on invalid
                    return Task.FromResult<object>(null);
                }
                return _antiforgery.ValidateRequestAsync(context.HttpContext);
            }
        }
    }
}

Can you point me in the right direction with RC2 , I cannot see the API calls necessary to create a new tokenset and validate
 return await _antiforgery.ValidateRequestAsync(context.HttpContext, /* new AntiforgeryTokenSet(headerToken, antiForgeryCookieValue */));
Thanks

The IAntiforgery interface includes SetCookieTokenAndHeader(HttpContext). But while a few methods return an AntiforgeryTokenSet, none have parameters of that type.
Could changing AntiforgeryOptions in your Startup avoid the need for ValidateAntiForgeryHeaderToken  entirely?

@pingcrosby - we added support for headers to antiforgery as a feature in RC2. Is that what you're trying to do? https://github.com/aspnet/Antiforgery/blob/dev/samples/AntiforgerySample/Startup.cs#L21
If you're using MVC all your have to do is configure this setting to the desired header name and all of the built in validation will use it.

That exactly what i wanted.
Nice and simple - as an aside is it possible to add multiple headers to check against eg
A quick question :-
Is it possible to add multiple headers to check against ? eg
 services.AddAntiforgery(options => options.HeaderName = "X-XSRF-TOKEN_TYPE1");  services.AddAntiforgery(options => options.HeaderName = "X-XSRF-TOKEN_TYPE2");
When i add options.HeaderName = "X-XSRF-TOKEN does this mean @Html.AntiForgeryToken() generates a Hidden field named X-XSRF-TOKEN or are they independent on one another?
I ask this because i have some legacy code to port and it mixes @Html.AntiForgeryToken() and some Ajax code that places the token in the header but uses a different name that generated by AntiForgeryToken.

Is it possible to add multiple headers to check against ? eg

We don't have any built-in support for this

When i add options.HeaderName = "X-XSRF-TOKEN does this mean @Html.AntiForgeryToken() generates a Hidden field named X-XSRF-TOKEN or are they independent on one another?

Yes, @Html.AntiForgeryToken() will still generate the hidden field. We've also updated @Html.BeginForm and the form TagHelper to include an antiforgery token by default, so most calls of @Html.AntiForgery() in legacy code are redundant.

Thanks for clarifying this issue
Appreciated


Update Azure AD Docs

For the Worker Version, it needs to be more clear what needs to be done to make it work with the provided AAD app. Wiki and README needs updating.

Added better readme

Added better readme


Supporting AsyncImage

Hi there, thanks for the library
Would it be possiable to somehow support img tags to render the image in the src itself? using something like AsyncImage(url: srcFromImage)
 private let tags: Dictionary<String, (Text) -> (Text)> = [
   "img": { _ in Text("\(Image("\(srcTagInaccessible)"))") }
]

Thanks again.

My solution only displays formatted text and does so with some limitations.
If you need to display more complex HTML code, try UIWebView for example. But please note that this solution doesn't work quickly.

Do you think it might be difficult to add it by converting the return type from Text to View and doing some prechecks for img tag? I can make a PR, just don't know which approach to take or if its a direction you want to go with the library.

In the future I plan to add support for attributes and HTML-encoded characters (e.g. &).
To display additional elements (e.g. images), it is probably better to use ZStack. I think the main problem will be how you define the type of elements inside the stack. I'm not sure that this is a simple task. Especially if you plan to support something other than images.


Design direct train CLI interface

Addresses #109. Now python tools/train_model.py is replaced by direct train. Still need to verify other CLI tools. Can you assist @georgeyiasemis what is missing?

Addresses #109. Now python tools/train_model.py is replaced by direct train. Still need to verify other CLI tools. Can you assist @georgeyiasemis what is missing?

We have predict functions such as in python3 projects/calgary_campinas/predict_val/test.py or python3 tools/parse_metrics_log.py


Add an API Proxy to a Product

Tutorials: https://developers.sap.com/tutorials/hcp-apim-create-product.html

I perform all the steps but an "Unable to publish Product" message appears each time I try to publish the product.

See https://answers.sap.com/questions/13426076/cant-publish-product-in-api-management.html which might help @spassaro80

Thank you so much!! I've been able to finally publish the product. Definitely, there's a missing step in the tutorial, it should warn to register as a developer in SAP API Business Hub before trying to publish the product.


Fix: web modals being closed unintentionally

… close #6096

Description of the issue
The reproduction steps and details are well described in the linked issue. In addition to that, this issue is not specific to the custom domain modal but all modals on the web.

Root cause explained
The backdrop component is listening to onPress event and closes out the modal when it happens.
But as described here, onPress event occurs after onPressOut event, which means it will occur whenever the mouse is pressed out on the Pressable component.
And that's exactly what's happening in the current implementation. When you press the mouse inside the modal and drag it out to the backdrop component (TouchableWithoutFeedback), the onPress event still occurs thus the modal disappears.

Changes made in the PR
Replaced onPress with onPressIn so the modal closes only when the mouse press event happens inside the backdrop (not the modal).

Screen recording of the updated behavior
https://github.com/user-attachments/assets/df9bade5-fb0d-4027-a7ed-f3312f38d1ee

This doesn't seem ideal as onPressIn gets called when it is held, not when it's no longer held (see the how it works section on the docs).

@mary-ext Appreciate your speedy response.
That's a good callout. I updated the PR to utilize onPressOut, which seems to be doing exactly what we want here.

https://github.com/user-attachments/assets/a8560c02-f4b7-46f3-9985-8dbe0d8a28f6
Here's the updated behavior.

https://github.com/user-attachments/assets/47c7bdc7-7b04-4976-aed6-857b89416e5d
I've found this interesting behavior in the production build. The issue starts not happening once I drag from outside to inside.
So, I think there is something more to investigate here, and I will keep posting my updates here.

I am not sure what's happening under the hood but here is my finding.
drag in = (drag from the outside modal to the inside) drag out = (drag from the inside modal to the outside)

When I drag out, only the onPress event occurs for the backdrop.
When I drag in

without selecting anything in the modal, all onPressIn, onPressOut and onPress events (no `onPress) occur for the backdrop, thus the modal closes out.
with selecting something in the modal, only onPressIn and onPressOut occur for the backdrop, thus the modal doesn't close.

Once I do #2 with selection, it changes #1, and onPress event starts not occurring, so no events occur for the backdrop. That's why the above behavior is happening in the production build.

Here is a visual explanation of what's described above -
https://github.com/user-attachments/assets/9b2afbed-11d5-43c0-9185-98015ddc6f48
Here is my fix.
I introduced an additional state flag, isMaskPressedIn to make sure that onPressevent is ignored when occurred withoutonPressIn` event for the backdrop. It prevents #1 from closing out the modal and fixes the reported issue.
My only concern with the fix is when #2 happens without the selection, it still closes out the modal.
@mary-ext If you can take another look, that would be appreciated. Thanks


new.target syntax is not transformed

Describe the bug
new.target is not being transformed to ES5-compatible syntax when es5 is the target.
Input code
Please see this repro.
In it, you'll find that output.js is the result of running swc index.js -o output.js with es5 as the target.
Config
You'll find it in the repro, but here it is:
{
  "jsc": {
    "target": "es5"
  }
}

Expected behavior
new.target syntax should be transpiled into syntax that legacy environments can understand.
Here's how babel would have rewritten new.target in the example from the repro:
if ((this instanceof Foo ? this.constructor : void 0) === undefined) {
    throw new TypeError("Constructor ".concat(Foo.name, " requires 'new'"));
}

Version
The version of @swc/core: 1.2.36

This still doesn't work if the class is declared within a nested lexical environment, such as within a self-invoking function.
Please see this repro where I've copied the exact same code from my original repro but placed it inside a self-invoking function.
swc produces the following output:
function _classCallCheck(instance, Constructor) {
    if (!(instance instanceof Constructor)) {
        throw new TypeError("Cannot call a class as a function");
    }
}
var _newtarget = new.target;
(function() {
    var Foo = function Foo(callback) {
        "use strict";
        _classCallCheck(this, Foo);
        if (_newtarget === undefined) {
            throw new TypeError("Constructor ".concat(Foo.name, " requires 'new'"));
        }
    };
})();

Which leads to syntax errors in browsers that doesn't support new.target syntax.
Please reopen this issue, and thanks for your time.

@wessberg Can you file a new issue?

Alright, here it is: https://github.com/swc-project/swc/issues/2308


[Snyk] Security upgrade django from 3.2 to 3.2.16

Snyk has created this PR to fix one or more vulnerable packages in the `pip` dependencies of this project.
Changes included in this PR

Changes to the following files to upgrade the vulnerable dependencies to a fixed version:

requirements.txt

Vulnerabilities that will be fixed
By pinning:

Severity
Priority Score (*)
Issue
Upgrade
Breaking Change
Exploit Maturity

379/1000  Why? Has a fix available, CVSS 3.3
Directory Traversal SNYK-PYTHON-DJANGO-1279042
django:  3.2 -> 3.2.16
No
No Known Exploit

579/1000  Why? Has a fix available, CVSS 7.3
HTTP Header Injection SNYK-PYTHON-DJANGO-1290072
django:  3.2 -> 3.2.16
No
No Known Exploit

589/1000  Why? Has a fix available, CVSS 7.5
Directory Traversal SNYK-PYTHON-DJANGO-1298665
django:  3.2 -> 3.2.16
No
No Known Exploit

429/1000  Why? Has a fix available, CVSS 4.3
Improper Input Validation SNYK-PYTHON-DJANGO-1298666
django:  3.2 -> 3.2.16
No
No Known Exploit

686/1000  Why? Proof of Concept exploit, Has a fix available, CVSS 7.3
SQL Injection SNYK-PYTHON-DJANGO-1315688
django:  3.2 -> 3.2.16
No
Proof of Concept

479/1000  Why? Has a fix available, CVSS 5.3
Access Restriction Bypass SNYK-PYTHON-DJANGO-2312875
django:  3.2 -> 3.2.16
No
No Known Exploit

399/1000  Why? Has a fix available, CVSS 3.7
Directory Traversal SNYK-PYTHON-DJANGO-2329158
django:  3.2 -> 3.2.16
No
No Known Exploit

399/1000  Why? Has a fix available, CVSS 3.7
Information Exposure SNYK-PYTHON-DJANGO-2329159
django:  3.2 -> 3.2.16
No
No Known Exploit

479/1000  Why? Has a fix available, CVSS 5.3
Denial of Service (DoS) SNYK-PYTHON-DJANGO-2329160
django:  3.2 -> 3.2.16
No
No Known Exploit

424/1000  Why? Has a fix available, CVSS 4.2
Cross-site Scripting (XSS) SNYK-PYTHON-DJANGO-2389002
django:  3.2 -> 3.2.16
No
No Known Exploit

479/1000  Why? Has a fix available, CVSS 5.3
Denial of Service (DoS) SNYK-PYTHON-DJANGO-2389021
django:  3.2 -> 3.2.16
No
No Known Exploit

624/1000  Why? Has a fix available, CVSS 8.2
SQL Injection SNYK-PYTHON-DJANGO-2606966
django:  3.2 -> 3.2.16
No
No Known Exploit

731/1000  Why? Proof of Concept exploit, Has a fix available, CVSS 8.2
SQL Injection SNYK-PYTHON-DJANGO-2606969
django:  3.2 -> 3.2.16
No
Proof of Concept

776/1000  Why? Proof of Concept exploit, Has a fix available, CVSS 9.1
SQL Injection SNYK-PYTHON-DJANGO-2940618
django:  3.2 -> 3.2.16
No
Proof of Concept

564/1000  Why? Has a fix available, CVSS 7
Reflected File Download (RFD) SNYK-PYTHON-DJANGO-2968205
django:  3.2 -> 3.2.16
No
No Known Exploit

479/1000  Why? Has a fix available, CVSS 5.3
Denial of Service (DoS) SNYK-PYTHON-DJANGO-3039675
django:  3.2 -> 3.2.16
No
No Known Exploit

(*) Note that the real score may have changed since the PR was raised.
Some vulnerabilities couldn't be fully fixed and so Snyk will still find them when the project is tested again. This may be because the vulnerability existed within more than one direct dependency, but not all of the affected dependencies could be upgraded.
Check the changes in this PR to ensure they won't cause issues with your project.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
🛠 Adjust project settings
📚 Read more about Snyk's upgrade and patch logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Directory Traversal
🦉 Directory Traversal
🦉 SQL Injection
🦉 More lessons are available in Snyk Learn

Coverage remained the same at 100.0% when pulling 5edf50547b13d1f503165025f98c0a430688d83b on snyk-fix-d81d064301a1c02c8cf1462b0e94f294 into 6abac1693e75a870557cd7f256e9f03a6fbc81fd on master.


chore: bump midea-local to v4.0.0

PR Description
Reason & Detail
Related issue
fix #X

sorry, we can't release v4.0.0 now, it should have the same socket issue like v3.0.1. need a new version to fix it, please wait a moment. I will commit/push the latest changes with device.py to fix it.

In the mean time we can bump library in the component. There is no release of the new component yet
Also note that v4.0.0 is already released ;-)

We should bump v4.0.0 as this is the version of the library that introduce the change in ProtocolVersion enum.
Then we wait for v4.0.1 before releasing the new component release.


Change viz type settings and default channels

Delete the text explanations below these headers and replace them with information about your PR.
Please first consult the developer guide to make sure your PR follows all code, testing, and documentation conventions.
Purpose
Explain the goal of this pull request. If it addresses an existing issue be sure to link to it. Describe the big picture of your changes here, perhaps using a bullet list if multiple changes are done to accomplish a single goal. If it accomplishes multiple goals, it may be best to create separate PR's for each.
Type of change
What types of change is it?
Select the appropriate type(s) that describe this PR

[x] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (non-backwards-compatible fix or feature)
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no API changes)
[ ] Documentation update
[ ] Maintenance update
[ ] Other (please describe)

Testing
Explain the steps needed to test the new code to verify that it does indeed address the issue and produce the expected behavior.
Checklist
Put an x in the boxes that apply.

[x] I have run existing tests which pass locally with my changes
[ ] I have added new tests or examples that prove my fix is effective or that my feature works
[ ] I have added necessary documentation

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 79.079%

Totals

Change from base Build<PHONE_NUMBER>3:
0.0%

Covered Lines:
21602

Relevant Lines:
27317

💛  - Coveralls


Avoid error

Migrations\Test\TestCase\MigrationsTest::testMigrateErrors
Failed asserting that exception of type "Error" matches expected exception "Exception". Message was: "Call to a member function getName() on bool" at
/.../vendor/robmorgan/phinx/src/Phinx/Db/Adapter/SQLiteAdapter.php:696

Is this covering for a deeper bug in getColumns function, as far as I am aware, should not be possible for that function to ever return an empty array as you cannot have a table without any columns.

Very possible, yes.

Looking at the Travis test results from cakephp/migrations#480, does not look like any failed with the test indicated above? I'll look into running the test locally, but just want to make sure it's not PHP version specific.

No this happens when you have a not found Migration.
Quite the edge case.


[HomeKit] Allow type changing for other entity groups

Currently we can only specify a type when adding Switches to HomeKit.
Reference: https://www.home-assistant.io/components/homekit/#type
Could this also be granted for Light entities? Due to the nature of how the Home Assistant plugin for my home automation bTicino is set up, almost all my entities are mapped to the Light group. Although they are in fact for example Outlets or Switches.
Meaning in HomeKit they will always have the Light bulb icon.

@Depechie To me that sounds more like an issue with your plugin than one with HomeKit. If they are in fact outlets or switches they should be setup as such.
You should be able to create Template Switches based on your entities and just integrate those into HomeKit. That should solve your issue.

I'm closing this issue, since it's a feature request and those should be made in the forum. However feel free to comment if you want to.

Thx for the info @cdce8p !!


Stopped the 'click' event propagation when an item/search field is clicked

Hi @grahamscott,
This code prevents the click event from bubbling up to body element.

Thanks!


Fixed partition - was only working with strings

Hi,
This is my first typescript PR so I'm sorry if I miss something...
However, as it is now partition only works with strings, which for me (coming from Haskell) it is not even the main use case.
Also, contains also allows both arguments to be strings, hence I added that too.
Let me know what you think,
Thanks

Thanks @jcristovao!


Allow all contributors without path in write_eml()

Finally, there is a path missing in package$contributors
> write_eml(dp, title = "test")
Please review generated metadata carefully before publishing.
Error in `dplyr::mutate()`:
! Problem while computing `orcid = stringr::str_extract(.data$path, orcid_regex)`.
Caused by error in `.data$path`:
! Column `path` not found in `.data`.
Run `rlang::last_error()` to see where the error occurred.
Called from: signal_abort(cnd, .file)

Originally posted by @Rafnuss in https://github.com/inbo/camtraptor/issues/156#issuecomment-1238869817

Should be fixed. @Rafnuss Can you test?

Yes, working like a charm =)


Need some help compiling this.

This could just be a me problem, but I'm having a hard time compiling this. I'm using gcc. I first started by trying just trying to compile chess_engine.cpp, but that did not work. It gave me a bunch of undefined references.
After that i tried to compile the cpp files into object files and linking them together, but than i still got multiple undefined references and also a few multiple definitions.
May I ask what you do to compile and use this project?

Hey, I cant seem to compile it, I ve tried including  and changing some of the code but I am unable, how do you compile it properly?
g++ -o out.o chess_engine.cpp position.cpp tables.cpp types.cpp
In file included from tables.h:3,
from chess_engine.cpp:3:
types.h:109:22: warning: inline function ‘Square pop_lsb(Bitboard*)’ used but never defined
109 | extern inline Square pop_lsb(Bitboard* b);
|                      ^~~~~~~
In file included from chess_engine.cpp:3:
tables.h:21:27: warning: inline function ‘constexpr Bitboard get_rook_attacks(Square, Bitboard)’ used but never defined
21 | extern constexpr Bitboard get_rook_attacks(Square square, Bitboard occ);
|                           ^~~~~~~~~~~~~~~~
tables.h:32:27: warning: inline function ‘constexpr Bitboard get_bishop_attacks(Square, Bitboard)’ used but never defined
32 | extern constexpr Bitboard get_bishop_attacks(Square square, Bitboard occ);
|                           ^~~~~~~~~~~~~~~~~~
In file included from tables.h:3,
from chess_engine.cpp:3:
types.h:113:25: warning: inline function ‘constexpr Square bsf(Bitboard)’ used but never defined
113 | extern constexpr Square bsf(Bitboard b);
|                         ^~~
types.h:108:19: warning: inline function ‘int sparse_pop_count(Bitboard)’ used but never defined
108 | extern inline int sparse_pop_count(Bitboard x);
|                   ^~~~~~~~~~~~~~~~
In file included from position.h:3,
from position.cpp:1:
types.h:109:22: warning: inline function ‘Square pop_lsb(Bitboard*)’ used but never defined
109 | extern inline Square pop_lsb(Bitboard* b);
|                      ^~~~~~~
In file included from position.h:6,
from position.cpp:1:
tables.h:21:27: warning: inline function ‘constexpr Bitboard get_rook_attacks(Square, Bitboard)’ used but never defined
21 | extern constexpr Bitboard get_rook_attacks(Square square, Bitboard occ);
|                           ^~~~~~~~~~~~~~~~
tables.h:32:27: warning: inline function ‘constexpr Bitboard get_bishop_attacks(Square, Bitboard)’ used but never defined
32 | extern constexpr Bitboard get_bishop_attacks(Square square, Bitboard occ);
|                           ^~~~~~~~~~~~~~~~~~
tables.cpp: In function ‘constexpr Bitboard get_rook_attacks(Square, Bitboard)’:
tables.cpp:163:1: error: the value of ‘ROOK_ATTACKS’ is not usable in a constant expression
163 | }
| ^
tables.cpp:116:10: note: ‘ROOK_ATTACKS’ was not declared ‘constexpr’
116 | Bitboard ROOK_ATTACKS[64][4096];
|          ^~~~~~~~~~~~
tables.cpp: In function ‘constexpr Bitboard get_bishop_attacks(Square, Bitboard)’:
tables.cpp:229:1: error: the value of ‘BISHOP_ATTACKS’ is not usable in a constant expression
229 | }
| ^
tables.cpp:182:10: note: ‘BISHOP_ATTACKS’ was not declared ‘constexpr’
182 | Bitboard BISHOP_ATTACKS[64][512];
|          ^~~~~~~~~~~~~~
tables.cpp: In function ‘void initialise_pseudo_legal()’:
tables.cpp:284:2: error: ‘memcpy’ was not declared in this scope
284 |  memcpy(PAWN_ATTACKS[WHITE], WHITE_PAWN_ATTACKS, sizeof(WHITE_PAWN_ATTACKS));
|  ^~~~~~
tables.cpp:2:1: note: ‘memcpy’ is defined in header ‘’; did you forget to ‘#include ’?
1 | #include "tables.h"
+++ |+#include
2 | #include "types.h"
In file included from tables.h:3,
from tables.cpp:1:
types.h: At global scope:
types.h:109:22: warning: inline function ‘Square pop_lsb(Bitboard*)’ used but never defined
109 | extern inline Square pop_lsb(Bitboard* b);
|                      ^~~~~~~
types.h:107:19: warning: inline function ‘int pop_count(Bitboard)’ used but never defined
107 | extern inline int pop_count(Bitboard x);
|                   ^~~~~~~~~
types.cpp: In function ‘constexpr Square bsf(Bitboard)’:
types.cpp:127:1: error: the value of ‘DEBRUIJN64’ is not usable in a constant expression
127 | }
| ^
types.cpp:104:11: note: ‘DEBRUIJN64’ was not declared ‘constexpr’
104 | const int DEBRUIJN64[64] = {


[language/tools] Add account diff to transaction-replay tool

A pretty simple PR that adds a subcommand to the transaction-replay tool to allow diffing an account state at two different versions.
$ cargo run -- -u https://testnet.libra.org/v1 diff-account<PHONE_NUMBER>00000000000000000000dd 0 2340288

/land


x/mobile: gomobile bind triggers a CC compilation with the wrong compiler

What version of Go are you using (go version)?
go version go1.16.2 linux/amd64
What operating system and processor architecture are you using (go env)?
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOENV="/root/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GOVCS=""
GOVERSION="go1.16.2"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/workspace/mobile/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build2276006800=/tmp/go-build -gno-record-gcc-switches"

What did you do?
Ran gomobile bind -target android -androidapi 30 -javapkg io.teller github.com/tellerhq/quic-droid-edge/mobile/pkg/droid
What did you expect to see?
Success
What did you see instead?
gomobile: err: exit status 2: stderr: go: downloading github.com/segmentio/ksuid v1.0.3
go: downloading go.uber.org/zap v1.16.0
go: downloading google.golang.org/protobuf v1.27.1
go: downloading github.com/lucas-clemente/quic-go v0.22.1
go: downloading go.uber.org/multierr v1.5.0
go: downloading go.uber.org/atomic v1.6.0
go: downloading github.com/cheekybits/genny v1.0.0
go: downloading golang.org/x/net v0.0.0-20210428140749-89ef3d95e781
go: downloading golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9
go: downloading github.com/marten-seemann/qtls-go1-16 v0.1.4
# runtime/cgo
gcc: error: unrecognized command line option '-marm'; did you mean '-mabm'?

If I explicitly set a target architecture using gomobile bind -target android/arm64 -androidapi 30 -javapkg io.teller github.com/tellerhq/quic-droid-edge/mobile/pkg/droid then I get a slightly different error.
gomobile: err: exit status 2: stderr: go: downloading github.com/segmentio/ksuid v1.0.3
go: downloading go.uber.org/zap v1.16.0
go: downloading github.com/lucas-clemente/quic-go v0.22.1
go: downloading google.golang.org/protobuf v1.27.1
go: downloading go.uber.org/multierr v1.5.0
go: downloading go.uber.org/atomic v1.6.0
go: downloading github.com/cheekybits/genny v1.0.0
go: downloading golang.org/x/net v0.0.0-20210428140749-89ef3d95e781
go: downloading golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9
go: downloading github.com/marten-seemann/qtls-go1-16 v0.1.4
# runtime/cgo
gcc_android.c:6:10: fatal error: android/log.h: No such file or directory
 #include <android/log.h>
          ^~~~~~~~~~~~~~~
compilation terminated.

If I run the command a second time then it succeeds. However, if delete the contents of $GOPATH/pkg/mod/ and reinstall gomobile and run gomobile bind again I get the same failure.
if I run GOOS=android GOARCH=arm64 CC=$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android30-clang CXX=$ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android30-clang++ CGO_ENABLED=1 go list -compiled=true -json github.com/tellerhq/quic-droid-edge/mobile/pkg/droid before running gomobile bind then the error is not triggered.
The error seems to be related to:
https://github.com/golang/mobile/blob/master/cmd/gomobile/bind.go#L113
pkgs, err := packages.Load(packagesConfig(targets[0]), args...)

this triggers some kind of CC compilation but the CC env variable is not set correctly at this point in time so it is unable to find android/log.h or it gets these architecture errors because the CC compiler on my box does not understand -marm but the android toolchain one does.

/cc @hyangah

Can't find the repository github.com/tellerhq/quic-droid-edge hence can't really start to investigate. Any updates?

Not responding. Close.


[Feature] Add Faster R-CNN 3x mstrain config

Motivation
Added faster RCNN 3x multi-scale training config
Result
when multiscale_mode is range, this is mean img_scale=[(1333, 640), (1333, 800)].
when multiscale_mode is value, this is mean img_scaleimg_scale=[(1333, 640), (1333, 672), (1333, 704), (1333, 736),
(1333, 768), (1333, 800)].

model
param
box AP
total time (min)

faster_rcnn_r50_fpn_mstrain_3x_coco
step=[28, 34]; multiscale_mode='range'
40.3

faster_rcnn_r50_fpn_mstrain_3x_coco
step=[27, 33]; multiscale_mode='range'
40.4

faster_rcnn_r50_fpn_mstrain_3x_coco
step=[28, 34]; multiscale_mode='value'
40.1

faster_rcnn_r50_fpn_mstrain_3x_coco
step=[27, 33]; multiscale_mode='value'
40.2
16h32

faster_rcnn_r50_fpn_mstrain_3x_coco
step=[27, 33]; multiscale_mode='value' ; repeatdataset
40.2
12h42

The following results are using step=[27, 33] , multiscale_mode='value' ,repeatdataset

model
box AP

faster_rcnn_r50_fpn_mstrain_3x_coco
40.3

faster_rcnn_r50_caffe_fpn_mstrain_3x_coco
39.9

faster_rcnn_r101_fpn_mstrain_3x_coco
41.8

faster_rcnn_r101_caffe_fpn_mstrain_3x_coco
42.0

faster_rcnn_x101_32x4d_fpn_mstrain_3x_coco
42.5

faster_rcnn_x101_32x8d_fpn_mstrain_3x_coco
42.4

faster_rcnn_x101_64x4d_fpn_mstrain_3x_coco
43.1

faster_rcnn_regnetx-1.6GF_fpn_mstrain_3x_coco
40.5

faster_rcnn_regnetx-3.2GF_fpn_mstrain_3x_coco
42.3

faster_rcnn_regnetx-4GF_fpn_mstrain_3x_coco
42.8

faster_rcnn_regnetx-400MF_fpn_mstrain_3x_coco
37.1

faster_rcnn_regnetx-800MF_fpn_mstrain_3x_coco
38.8

Need to fix lint issue.

Can be merged after updating readme and metafile.


Homepage opens without style:

When I open my page through the localhost, it reveals without any style, same as to turn off all css commands.

Do you have modsecurity-crs installed on your host ?
That may be a big part of the problem you are facing.

no i don't.
I just use Windows 10, have installed WAMPSERVER & the last version of ph7cms.

@SMN-Sam Is it a fresh installation? Did you do some changes?
Have you tried to clear the Static file through Cache Manager? https://ph7cms.com/doc/en/how-to-clear-caches
It might seem a lot of questions, but needed in order to help you 😉

hello,
If I uninstall WAMP & delete all the files of ph7cms & reinstall, will it be helpful?


Introduce a GH action for flake8

This should be merged after https://github.com/kserve/models-web-app/pull/22 that fixes flake8 errors.
/cc @elikatsis @yuzisun

The tests seem to pass, but that's weird since I see errors locally. I'm looking into it

The tests seem to pass, but that's weird since I see errors locally. I'm looking into it

The above is expected in the end. The actions/checkout@v2 only fetches the commits that triggered the workflow. So only if a commit changes a .py file then will the workflow run.
I've verified that with an malformed commit the test indeed fails, so we should be good to go. Reverting the test commit.

@elikatsis this should also be ready for review

/lgtm

@Tomcli do you know why didn't this PR get merged? It seems to have all the required labels

It seems like the bot couldn't merge this PR with the squash merge API. The Github merging API itself returns 200 but the PR didn't do the merge.


Official WGPU integration

Building on #1555, it looks like providing an official wgpu backend might have its benefits.
This builds on Nils Hasenbanck's egui_wgpu_backend but removes the need for egui_winit_platform and some boilerplate code and instead uses egui's own egui-winit and eframe. This approach worked well in egui 0.17 using the separate epi crate. 0.18 made this approach invalid as epi was moved into eframe.
@hasenbanck Since this is a heavily modified fork from your repository from around egui 0.16, you are still listed as the primary author. I also left the original license files in here, at least for now. Let me know if this is okay for you.
This does not compile right now. But as outlined in #1555, there is some potential for sharing code between the glow and wgpu backend which we can experiment with in this PR.

@s-nie From a license and copyright standpoint this likes fine.

Great! I continued work on this in https://github.com/emilk/egui/pull/1564 (because I don't know how to commit to this branch), so I'm closing this now.


Save button doesn't fit in coderoad drawer's margins

From @scottclayton on October 3, 2016 18:30
On my atom setup—UI Theme: Atom Material (from atom-material-ui), Syntax Theme: One Dark—the save button is covered by Atom's status bar:

Copied from original issue: ShMcK/coderoad-redux-js#1

This issue was moved to coderoad/core-coderoad#8


Extend new language : Indonesian but need more fix

Add Indonesian numeric system and currency. Specifically, there are difference usage of comma and dot between Indonesian and English one (comma for decimal and dot for thousand separator). Is this okay?
Todo :

more numbers
generalize ordinal number

Thanks!


https://developer.mozilla.org/vi/docs/Web

Request type

[x] Please close this issue, I accidentally submitted it without adding any details
[ ] New documentation
[ ] Correction or update

Details

Toi ung ho nhu vay roi toi co duoc gi khong


Fix #201247

Fix #201247
The bug was caused because, SLC was only updating icon and color. Just added 2 lines to also get env.
Also made a new unit test, which uses a MockTerminalProfileResolver to always return a default profile with a specific env. Then I create the TerminalInstance, after that I wait for the _xtermReadyPromisse to resolve and after that I check if the env is in the SLC. Also had to add some _register in TerminalInstance to fix some leaks

@r-sargento please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
@microsoft-github-policy-service agree [company="{your company}"]

Options:

(default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

(when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.

@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree


chore: migrate examples from extensions to apps

Use create-contentful-app as the base for all widget examples, instead of using create-contentful-extension.
Rename them and make sure that the correct app-framework related information is linked.

I made a README change in package:_shared. I wonder if that'll cause a version bump through github actions?

I made a README change in package:_shared. I wonder if that'll cause a version bump through github actions?

chore commits should not result in a version bump.


fzf-lua extension

Describe the feature
LazyVim has now replaced telescope with fzf-lua by default.
The metals telescope extension is very, very handy, but is no longer compatible with LazyVim. It would be fantastic to have a fzf-lua flavour of it.
Potential ways to implement
I'm giving it a try. No promise of results.

https://github.com/scalameta/nvim-metals/pull/702

Since this was closed I'll go ahead and close this.


A0-1855: In FE, replace private feature-env-aleph-node repo with public aleph-node

All feature env docker images should now use the public aleph-node repository, instead of the private one.

I have created feature-env-aleph-node public ECR repository, with URL of public.ecr.aws/p6e8q1z1/feature-env-aleph-node


How to mark source to show on Application Map.

Greetings!
We have currently multiple sources that send requests to our systems.
We would like to see those systems(applications) show up on application insights "Application Map".
Is this anyhow possible without the sender having application insights?
For example,
If I have a system that sends us new orders
Can I somehow show that on Application Map without having to pass our application insights instrumentatioKey etc for them?
I can modify request and headers as they come through front door and api management as I wish.
I know from IP source and from auth token the source so I can map it to correct client if possible.
Is there some header value or other that I could modify to make Application Insights parse that request to show on Map?
Is it only possible that the request should go to https://dc.services.visualstudio.com/v2/track so it will be shown there?
We have application insights on api management and our whole backend (running in AKS).
See picture below with "Client1" and "Client2" modified to picture.

Is this anyhow possible without the sender having application insights?

Don't think so. Only those components which sent their telemetry to ApplicationInsights, and you have access to their telemetry will be visible here.

Is this anyhow possible without the sender having application insights?

Don't think so. Only those components which sent their telemetry to ApplicationInsights, and you have access to their telemetry will be visible here.


Add booking requirements, DRT travel times, and point deviation

This is intended to enhance GTFS-flex capabilities to express the West Salem Connector (Salem, OR) service.
See discussion: https://groups.google.com/d/msg/gtfs-flexible-wg/dx6Qj-YyaC4/7FDUNnFFOwAJ

Thanks @antrim!  How do you and everyone else want to handle merging of these types of additions?  Do we want to use a voting process similar to GTFS-rt - in other words, allow 7 days for feedback, and if no -1 votes then merge?
We're early in the spec process here, so I think we want to find the right balance between being able to iterate quickly based on real-world examples but also limit purely speculative additions.

GTFS-rt change process is here, for reference.

@barbeau : I think your proposal sounds good.

Proposer/pull requester becomes advocate for the proposal
7 days for feedback
Then merge if no -1; require constructive feedback/alternative suggestions with downvote

Yes, clearly we are working with an early draft, but we may as well start some tentative governance practices, and prevent spec bloat.
With the GTFS-rt process, it looks as though the discussion and voting occurs in github comments. If we follow this process, it would require the gtfs-flexible-wg participants to all use github.

@barbeau : It might make sense to be more explicitly more permissive of speculative or experimental proposals at this phase. That is, people still have to advocate for their proposal -- why is this good to have in the draft spec? -- but I don't think we want to set the bar as high as with a final -- why does this absolutely need to be in an adopted, in-use spec?.
I would expect more reversals and rapid changes during the draft process.
Case in point. There are at least two aspects of my recent proposal about which I am unsure:

Introduction of the unordered field. It seems as though an aesthetically cleaner way to do this would be to use the same stop_sequence values for a block of deviation points. But I believe that would break backwards compatibility with GTFS. We are continuing to aspire towards backward compatibility, but I wonder that it might become practical to give up that aspiration at a certain point.
Service parameters (travel times and booking): There may be a lot to explore here, and what I've proposed just represents a first stab. This is a start, but I fully expect major rearrangement.

I don't expect the uncertainty in the above questions to be resolved in the coming 7 days. Therefore, I'd expect a process where a speculative proposal that is "reasonable" is accepted (pull request merged), with the strong possibility of later significant rearrangement.

The proposed change process makes sense. I see some pitfalls (its a barrier for the large non-technical crowd that is watching GTFS-Flex, myself included and could be cumbersome as we migrate narrative and context into github from other places), but I think the pros (structure, documentation, deliberation, etc) outweigh the cons.
Do we vote by commenting, or using a reaction?  I reacted to Aaron's proposal and Sean's voting proposal above.  Please tell me if I'm doing it wrong.

Do we vote by commenting, or using a reaction?

@RossPeterson Good question - Github didn't have reactions when we implemented the GTFS-rt and GTFS Github proposal process :).
I'd suggest we vote by comments, with +1 or -1, and used strikethroughs to change votes (edit the comment, strikethrough the old vote, and then add the new vote under along with a short explanation of why the vote changed).  This allows us to keep a bit of voting history, and we'll also get notified when someone comments (we don't get notified for reactions, to my knowledge, unless there is a way to turn this on I don't know about).  We use this same process in GTFS-rt/GTFS process:

Anyone is allowed to vote yes/no in a form of comment to the pull request, and votes can be changed until the end of the voting period. If a voter changes her vote, it is recommended to do it by updating the original vote comment by striking through the vote and writing the new vote.

I just remembered this part of the process

Proposer/pull requester becomes advocate for the proposal

I'm back to advocate for this proposal :) Looks as though this met positive reception without any objections. Can we merge the branches? Our rules say 7 days to make a decision, but since it's early in the process, I am requesting an exception.
Again, since we are working on a draft spec, I expect that we may reverse course or alter our ideas at some point. At this point, all our changes are speculative.

I think we are actually more than 14 days out from original proposal, so I think we are good on time.  Given no objections and at least two votes I'll go ahead and merge.  Thanks!


Installed tk event loop hook.

Printed with importing.

Hello @amaiya,
I'm new in this new environment of coding, python, etc... and I don't understand your solution of "installed tk event loop hook" error. I encounter the same and I would like to apply your solution!
Thanks in advance!!

"Installed tk event loop hook" is just something informational coming from matplotlib.  So, it's harmless and no solution is necessary.


Not working with docker

I am trying to use fast render and deploy my app using docker, however the inclusion of fast-render breaks the app - i.e - it keeps on trying to connect to the server and doesn't transfer the data appropriately

Can you give more details? I deployed to docker with fast-render just fine.


Too few arguments to function Meema\MediaConverter\Converters\MediaConvert::createJob(), 0 passed in

Following the example for simple job:
use Meema\MediaConverter\Facades\MediaConvert;
use Meema\MediaConverter\Jobs\CreateVideoConversion;

# simple usage
MediaConvert::path('video.mkv') // the s3 path to the file inside the bucket defined in your config (filesystems.disks.s3.bucket)
    ->optimizeForWeb() // will generate an optimized MP4 for you
    ->withThumbnails(int $framerateNumerator, int $framerateDenominator, int $maxCaptures, $width = null, $nameModifier = null, $imageQuality = 80) // will generate thumbnails from the video for you, e.g. poster images
    ->saveTo('my-optimized-video.mp4'); // output file name
    ->createJob();

I dropped the extra ; after the saveTo but createJob() is generating this error:
Too few arguments to function Meema\MediaConverter\Converters\MediaConvert::createJob(), 0 passed in
Anything missing from the example, or anything you can suggest to fix?
Thanks!

Hi @injektion,
Thanks for commenting on this issue, and, yes, we would love to help out. It appears like something is not working correctly and we will have this looked into ASAP and ping you with updates. 🙂
cc @glennmichael123, could you please take a look?
Thanks!
Chris

Hi @injektion issue fixed in this #22
@Chris1904 Kindly check the code and the tests then merge it it's all good to go.
Thanks!

Thanks, Glenn!
I just released a new version that includes this bug fix.
Ping me if there is anything else I/we can help clarify. 👍🏼


Error in semihost_rename() function

The semihost_rename() function is currently:
https://github.com/apache/mynewt-core/blob/12ee28f2052b7c716cdf8e3ac49f52f7c372f331/hw/drivers/semihosting/src/mbed_semihost_api.c#L103-L111
and should be:
int semihost_rename(const char *old_name, const char *new_name)
{
    uint32_t args[4];
    args[0] = (uint32_t)old_name;
    args[1] = (uint32_t)strlen(old_name);
    args[2] = (uint32_t)new_name;
    args[3] = (uint32_t)strlen(new_name);
    return __semihost(SYS_RENAME, args);
}

Semihosting for AArch32 and AArch64
6.16   SYS_RENAME (0x0F)
Renames a specified file.
6.16.1   Entry
On entry, the PARAMETER REGISTER contains a pointer to a four-field data block:
field 1

A pointer to the name of the old file.

field 2

The length of the old filename.

field 3

A pointer to the new filename.

field 4

The length of the new filename.

Both strings are null-terminated.
6.16.2   Return
On exit, the RETURN REGISTER contains:

0 if the rename is successful.
A nonzero, host-specific error code if the rename fails.

Hello,
looks like typo indeed,  @kemonats do you want to send PR with this fix?:)

No


Uncaught Helper "collections.projects.forbiddenFields" is not defined.

How do I use this forbidden fields feature? I have tried googling around a bit but don't see any documentation. I've just removed insecure and now my orion admin panel cannot even insert new documents into my collection without throwing Uncaught Helper "collections.projects.forbiddenFields" is not defined.
I am using orion, but not explicitly using attachRoles (any more than what the blog example comes with).
As discussed in: https://github.com/nicolaslopezj/roles/commit/e98ce1eab96b6f92c4c7f638963556f8d44b18b2

Can I see your code?

Sent it to you via email, as it's not open source and I am not sure which snippet you are interested in seeing!

I can't see any error there, please try again sending the repo.
My email is<EMAIL_ADDRESS>

Had the same problem after the update to meteor 1.2.
I had to update nicolaslopezj:roles manually with meteor update nicolaslopezj:roles


Add packaging for Microsoft.Extensions.DependencyInjection

Summary
This PR introduces a package for the Microsoft.Extensions.DependencyInjection library (and dependencies) and upgrades the NuGet reference from 2.1.1 to 7.0.0.
At this point, this introduces a manual upgrade step, where the package is installed on a DNN 9.x site to upgrade the DI library before doing the full DNN upgrade.

I added a commit to ensure the request scope is asynchronously disposed, per https://github.com/dnnsoftware/Dnn.Platform/pull/5014#issuecomment-1489360207. There are other scopes which we're currently creating which would ideally be disposed asynchronously, but that'll take some review to see how/if that can be done.


Edit the source code

hi...
I need to Edit the source code so when any one try to connect to the hotspot
and use a password  I want to print the password which he/she used to connect to my hotspot
(I want to get the variable password and print it when any one try to connect to the hotspot)
thanx <)

If you setup using the tarball, then the source should be on your usual PYTHON path where the libraries are typically installed. On Linux, this is usually this:
/usr/lib/python2.7/dist-packages/setuptools

And on windows, it is this:
`C:\\Users\\<user>\\AppData\\Local\\Programs\\Python\\Python<ver>\\lib\\test`

Hope that helps.

thank you...
I have another question plz...
in the source code what is the variable name which containing the password that the user used it t connect to my hotspot
I want the tool to print it for me
thank you


PyTorch Lightning error- Chapter 13

Hey Sebastian,
I was running:
from pytorch_lightning.callbacks import ModelCheckpoint

mnistclassifier = MultiLayerPerceptron()

callbacks = [ModelCheckpoint(save_top_k=1, mode='max', monitor="valid_acc")] # save top 1 model

if torch.cuda.is_available(): # if you have GPUs
    trainer = pl.Trainer(max_epochs=10, callbacks=callbacks, gpus=1)
else:
    trainer = pl.Trainer(max_epochs=10, callbacks=callbacks)

trainer.fit(model=mnistclassifier, datamodule=mnist_dm)

and getting error:
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
[<ipython-input-15-d4c40d00e094>](https://localhost:8080/#) in <cell line: 4>()
      2
      3
----> 4 mnistclassifier = MultiLayerPerceptron()
      5
      6 callbacks = [ModelCheckpoint(save_top_k=1, mode='max', monitor="valid_acc")] # save top 1 model

[<ipython-input-12-128023de75e1>](https://localhost:8080/#) in __init__(self, image_shape, hidden_units)
      4
      5         # new PL attributes:
----> 6         self.train_acc = Accuracy()
      7         self.valid_acc = Accuracy()
      8         self.test_acc = Accuracy()

TypeError: Accuracy.__new__() missing 1 required positional argument: 'task'

I would really appreciate if you can update your code in github since things are changing fast.
Thanks,
Ankush Singal

Oh sorry about that, there as a recent change in TorchMetrics which is causing that. I will leave this issue open to update the the code here for compatiblity.
So what needs to be changed is
self.train_acc = Accuracy()

to
self.train_acc = Accuracy(task="multiclass", num_classes=10)

and the same for the validation and test set.


🔀 :: (#165) Recruitment, HiringArea 엔티티 수정

close #165

Codecov Report

Merging #166 (4da7e30) into main (cca1fb4) will increase coverage by 0.12%.
The diff coverage is 0.00%.

@@             Coverage Diff              @@
##               main     #166      +/-   ##
============================================
+ Coverage     33.98%   34.11%   +0.12%
  Complexity      200      200
============================================
  Files           115      115
  Lines          1333     1328       -5
  Branches         10       10
============================================
  Hits            453      453
+ Misses          879      874       -5
  Partials          1        1

Impacted Files
Coverage Δ

...benecia/domain/recruitment/domain/Recruitment.java
32.55% <0.00%> (-0.78%)
:arrow_down:

...itment/domain/RecruitmentRepositoryCustomImpl.java
4.54% <ø> (+0.84%)
:arrow_up:

...main/recruitment/domain/hiringarea/HiringArea.java
71.42% <ø> (+8.92%)
:arrow_up:

...a/domain/recruitment/facade/RecruitmentFacade.java
3.12% <ø> (+0.09%)
:arrow_up:

...tion/payload/request/CreateRecruitmentRequest.java
0.00% <0.00%> (ø)

...domain/recruitment/service/RecruitmentService.java
1.75% <0.00%> (-0.04%)
:arrow_down:

Continue to review full report at Codecov.

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


[Logistic] Set up requirement documentation

starting from 200717, the progress of development should be documented.
First meeting in #2

#4
#10
#39
#57
#73


AzureStack Update Powershell for API2021-07-01

AzureStack Update Powershell for API2021-07-01

/azp run

@LingyunSu Make sure to squash the changes into a single commit so we can track the changes more easily.


Secrets with nested jsons can be truncated

When trying to upload secrets with multiple level jsons, I get the following warning:
WARNING: Resulting JSON is truncated as serialization has exceeded the set depth of 2.
I believe it might be related to using the ConvertTo-Json cmdlet in the API call.
https://github.com/joshcorr/SecretManagement.Hashicorp.Vault.KV/blob/bbed87f552822956ebb1b28ced10648cee6a8030/SecretManagement.Hashicorp.Vault.KV/SecretManagement.Hashicorp.Vault.KV.Extension/SecretManagement.Hashicorp.Vault.KV.Extension.psm1#L284

Thanks for submitting an issue!
Yes, I believe you are correct. I am not setting the -Depth parameter, which might cause this issue.
Could you provide a pseudo example of what you are trying to execute and what the structure of secret looks like, so I can reproduce? Is the Json a nested key? Or is it a path that is 3+ layers deep?
Also what version of Hasicorp Vault is this on? And what version of the module?

Here is an example of the secret value in json
{
  "CustomerConfig": [
    {
      "clientId": "test",
      "clientSecret": "test",
      "geniusCustomerId": "0",
      "identityServerUri": "https://test.com"
    },
    {
      "clientId": "test2",
      "clientSecret": "test2",
      "geniusCustomerId": "6699",
      "identityServerUri": "https://test.com"
    }
  ]
}

The path is product/customer/settings-gss in a vault named secret.
From what I was able to debug it is displaying the waring when calling Set-Secret but could not get more info.
Testing it on Vault 1.2.3 but soon should be able to test on 1.8.0 as well.
Microsoft.PowerShell.SecretManagement 1.1.0
SecretManagement.Hashicorp.Vault.KV   1.1.0
Microsoft.PowerShell.SecretStore 1.0.3
$PSVersionTable
Name                           Value

PSVersion                      7.1.4
PSEdition                      Core
GitCommitId                    7.1.4
OS                             Microsoft Windows 10.0.19043
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

I figured out that Unregister-SecretVault is not cleaning up my configuration properly and I need to restart my PowerShell process to properly pull new config. Simply adding -Depth 10 in New-VaultAPIBody ConvertTo-Json call seems to solve the issue for me.

Thanks for the info and for testing. That is odd behavior on Unregister-SecretVault. That might be an issue with the SecretManagement module.
I haven't tested with JSON as a value of a key, so will work on a fix this evening, or if you want to put a PR together that would be great.

I admin the way Vault is used here to store stuff is weird but that is what I got. I will try to make a PR, just need to check the contributions guide :)


the style guide page has a ton of markdown/formatting issues

https://github.com/Azure/portaldocs/blob/master/portal-sdk/generated/index-portalfx-extension-style-guide.md
in the old auxdocs days it actually had things showing what the values were, etc.
now it appears to all just be broken css/markdown?

Here is workaround for formatitng isuses: https://rawcdn.githack.com/Azure/portaldocs/master/portal-sdk/generated/index-portalfx-extension-style-guide.md
We are looking into publishing documents at github pages that will solve the problem of formatting all css , markdown files


Claudia Create fails with errno -4048 on Windows 7

I'm on Windows 7, following the Hello World Chatbot tutorial. I run:
claudia create --region eu-central-1 --api-module bot
Which produces the following output:
packaging files npm pack "C:\dev\claudia-bot"
{ Error: EPERM: operation not permitted, rename 'C:\Users\MIKAL~1.MAD\AppData\Local\Temp\07d86c6b-6684-42b9-9851-45fb51400b22\package' -> 'C:\Users\MIKAL~1.MAD\AppData\Local\Temp\e4bac5c0-a04a-42e6-b674-20464851d659'
  errno: -4048,
  code: 'EPERM',
  syscall: 'rename',
  path: 'C:\\Users\\MIKAL~1.MAD\\AppData\\Local\\Temp\\07d86c6b-6684-42b9-9851-4
5fb51400b22\\package',
  dest: 'C:\\Users\\MIKAL~1.MAD\\AppData\\Local\\Temp\\e4bac5c0-a04a-42e6-b674-2
0464851d659' }

From what I can tell it has 2 problems:

It's trying to rename /parent/child/ to /uncle/
It uses absolute paths.

From this page:

Note that, with rename command, we can’t move the files to another drive or directory. This command just renames the existing file/folder and does not create a new file.  That is why it does not accept full path for the target file name. If you try to do that you will get the error – “The syntax of the command is incorrect.”

I can create similar issues on the command line in several ways:

rename parent\child uncle
This gives us the folders /parent and /parent/uncle
rename ./parent/child ./uncle
Syntax error.
rename .\parent\child .\uncle
Syntax error.
rename c:\dev\test-rename\parent\child c:\dev\test-rename\uncle
Syntax error.

Searching the global claudia source files for "packaging files" leads me to believe the problem is with the following piece of code in <global>/node_modules/claudia/src/tasks/collect-files.js starting at line 38:
copyFiles = function (packageConfig) {
	const packDir = tmppath(),
		targetDir = tmppath(),
		expectedName = expectedArchiveName(packageConfig);
	fsUtil.ensureCleanDir(packDir);
	return runNpm(packDir, 'pack "' + path.resolve(sourcePath) + '"', logger)
	.then(() => extractTarGz(path.join(packDir, expectedName), packDir))
	.then(() => fs.renameAsync(path.join(packDir, 'package'), targetDir))
	.then(() => {
		fsUtil.rmDir(packDir);
		return targetDir;
	});
},

Where the salient detail is fs.renameAsync(path.join(packDir, 'package'), targetDir)).
After a few attempts I have determined that the correct way to go about this is the following:
fsUtil.copy(path.join(packDir, 'package','*'), targetDir)
This copies the files from <packDir>/package to <targetDir>.
The error is gone and everything works. I will issue a pull request shortly.

i'm closing this as i've been unable to reproduce it


Should this package be an Oceananigans module?

But why OrthogonalSphericalShellGrids is a deps of the Oceananigans test suite? Perhaps that test belongs in this package?

Yeah, it's not very well thought out I think. The problem I think is basically that Oceananigans doesn't have much built-in functionality for orthogonal grids. So it helps to use this package to build a tripolar grid and test some of the functionality.
Probably, either Oceananigans needs to have more built-in non-trivial grids (thereby motivating the implementation of OrthogonalSphericalShellGrid in Oceananigans the first place). Or, all of the orthogonal grid functionality could be moved here. A third option is to incorporate this package into Oceananigans.
My hunch is that it is important to have a general orthogonal grid implementation in Oceananigans because otherwise the general implementation of operators etc is not well-motivated.
This problem has been present from the beginning with OrthogonalSphericalShellGrid as I recall, it wasn't even possible to use it in stand-alone simulations at first.
Originally posted by @glwagner in https://github.com/CliMA/OrthogonalSphericalShellGrids.jl/issues/33#issuecomment-2365246606

Probably, either Oceananigans needs to have more built-in non-trivial grids (thereby motivating the implementation of OrthogonalSphericalShellGrid in Oceananigans the first place). Or, all of the orthogonal grid functionality could be moved here. A third option is to incorporate this package into Oceananigans.

I don't see what's the difference of the third option from the first.

The first option would add other orthogonal spherical shell grid options --- for example rotated lat lon grids --- to Oceananigans. Then we wouldn't need to invoke this package to test OrthogonalSphericalShellGrid because we could use the native options instead, and this package could stand alone as implementation of the more complicated versions.

I like the rotated lat-lon grid option in Oceananigans. It's simple enough but very useful for things like arctic simulations


fix: Use slashes in folder names instead of division slashes added by Gazer

When Gazer exports folders it replaces slashes with division slashes (Unicode character 2215) in the corresponding local folder name, and when Looker Deployer is importing content it's using the local folder names to create folders in the target Looker instance, which results in folders whose names contain slashes getting slightly mangled to contain division slashes when they're imported. This PR attempts to restore the original folder names containing normal slashes when importing.
Copy of https://github.com/looker-open-source/looker_deployer/pull/152 running from a local branch so tests run properly.

Had to redo this as a squash and merge.


Unable to get the auto-push to work with Gitea

Installation information

jumpscale version: 9.2.1
operating system: Ubuntu

Detailed description
We get an error in the tmux window: user root doesn't exist.

This ticket really doesn't say much.
@yveskerwyn Could you describe a bit more what you were doing, the steps you took.... etc?

Let's close since this was related to AYS not being able to auto-push repo changes to a central Gitea server


Running kpt live apply in a non-initialized directory hangs

When I run kpt live apply in a package directory immediately after running kpt pkg get it hangs with no output.
The correct command is kpt live apply . but the behavior when a directory isn't provided is very confusing.

@mortent @seans3 I see that the live commands are waiting for stdin if there is no DIR specified which is confusing the user. What do you think is the UX for such cases?

So I think we have two options here if we want to address this.
We can adopt the - convention used by kubectl to signal that we should read from stdin. I'm not crazy about this idea, and we would need to adopt it across all kpt commands to be consistent.
We can see if there is a way we can distinguish between kpt live apply and kpt cfg cat /my-folder | kpt live apply so we can exit with an error in the first situation. Just trying with the unix less command, it does actually handle this. Looks like there is a way we can check this with go: https://stackoverflow.com/a/26567513. We should try this out, although we need to make sure we don't break windows support by doing this.

This was in v0 and no longer an issue in kpt v1. Closing this. Please reopen if you have any concerns.


[feature] remove unnecessary mc system libraries

Problem
The new --decode-internal option in forge makes existing tracer and logger features redundant, increasing maintenance and performance overhead.
Solution
Remove tracer and logger features and utilize the --decode-internal option in forge to simplify the codebase and reduce maintenance.
Alternatives
Keep tracer and logger while using the --decode-internal option together.
Enhance tracer and logger to match the functionality of --decode-internal.
Additional context
The --decode-internal option in forge automates internal function calling decoding, streamlining debugging processes and rendering tracer and logger redundant.

After investigating the --decode-internal option, applying it to the standard mc deployment process results in the forge test command being killed, likely due to resource consumption issues (e.g., [1] 98864 killed forge test --mc DAOBehaviorTest --decode-internal -vvvvv).
Therefore, we have decided to continue enabling the current mc debugger until Foundry supports more detailed decode options or the mc architecture is optimized for proper display.


0.1.2 Regressions and breaking changes

Hi,
thanks a lot for that release but unfortunately I found a few problems with it.
Regressions:

it is no longer possible to execute multiple requests with the same async client. See https://gist.github.com/DevLazio/3afd1c221dd58b3949da9ced624aede3 for example. When updating to 0.1.2 I had to add line 37 to fix a deadlock.
Errors are no longer Send + Sync

Breaking changes:

deserializing to a struct with the json() method require encapsulating the type with GraphResponse<>

let license_details: LicenseDetails = client
            .v1()
            .users()
            .id(user_id)
            .list_license_details()
            .json()
            .await?;

Ok(license_details.value)

became
  let license_details: GraphResponse<LicenseDetails> = client
            .v1()
            .users()
            .id(user_id)
            .list_license_details()
            .json()
            .await?;

  Ok(license_details.into_body().value)

and the documentation / readme should reflect that

You are unable to run multiple requests with the same client? That is odd, the tests would have caught that easily so I am unsure whats causing it yet.

The README definitely needs to be updated, which is something I intended to do already, but it slipped my mind.

Can you tell me what dependencies and versions you are using in that gist? I am assume futures for the stream::iter, but I want to see if I can reproduce this.

Also, the error that is returned did not change. It has always been
https://github.com/sreeise/graph-rs/blob/87380791b8e118f24326f1c86aa86ff094042441/graph-error/src/lib.rs#L19
Whether Send + Sync is required can depend on what you are doing. Some requests require that Send + Sync be upheld but it can depend. That is not to say that this issue is not happening. What could cause a type to lose its automatically derived Send + Sync is when it has added a member to itself that is not Send + Sync, and this may have happened when I moved the errors for uploads/downloads and added them to the enum GraphFailure error. Ill check into that.
I have a feeling that what your experiencing with both the Send + Sync being missing and not being able to use the same client for multiple requests is due to the same issue. If the error type is no longer Send + Sync then there could be all kinds of issues with running async requests.

Yeah so my theory about GraphFailure looks to be correct. Something happened to where Sync got unimplemnted. The previous version has
impl Sync for GraphFailure

and the new version has
impl !Sync for GraphFailure

https://docs.rs/graph-error/0.1.1/graph_error/enum.GraphFailure.html

Sorry if I came out rude, that was not my intent at all, what you are doing is awesome !
Relevant dependencies for my gist
graph-rs-sdk = "0.1.2"
graph-http = "0.1.2"
serde = "1.0.130"
simple-error = "0.2.3"
tokio = { version = "1.15.0", features = ["full"] }
reqwest = { version = "0.11", features = ["json"] }
futures = "0.3.19"
url = "2.2.2"
simplelog = { version = "^0.11.0", features = ["paris"] }
log = "0.4.14"
itertools = "0.10.1"
chrono = "0.4.19"

I am able to run multiple request with the same client, but not concurrently with buffered futures. The program deadlock as soon as the second request is being sent. I will try provide a full example today.
I will try to provide PR for updated docs and example too.

Here is a full example of the concurrency problem : https://github.com/DevLazio/graph-rs-concurrency-issue
You just need to replace the ACCESS_TOKEN.

Sorry if I came out rude, that was not my intent at all, what you are doing is awesome !
Relevant dependencies for my gist
graph-rs-sdk = "0.1.2"
graph-http = "0.1.2"
serde = "1.0.130"
simple-error = "0.2.3"
tokio = { version = "1.15.0", features = ["full"] }
reqwest = { version = "0.11", features = ["json"] }
futures = "0.3.19"
url = "2.2.2"
simplelog = { version = "^0.11.0", features = ["paris"] }
log = "0.4.14"
itertools = "0.10.1"
chrono = "0.4.19"

I am able to run multiple request with the same client, but not concurrently with buffered futures. The program deadlock as soon as the second request is being sent. I will try to provide a full example today.
I will try to provide PR for updated docs and example too.

Nah, it was my fault, I was in a rush to get this out and couldnt really reproduce it so it was a little frustrating. Its always good to have a second set of eyes and even told that I missed something every now and then :smiling_face_with_tear: haha. Thank you for the example

@DevLazio If you get a chance, can you look at https://github.com/sreeise/graph-rs/pull/329 and let me know if that fixes the issues your seeing? I was attempting to get the example to work on my end in a test but had to change up a few things and was getting some borrow issues so I figured you might be able to test this a bit better.

Unfortunately it doesn't fix the concurrency issue.
It does fix the Send + Sync issue though.

I can reproduce the concurrency problem from this commit : 3dc2fb953d0b4932b1568083ebf390f68cbf44a3
No idea what caused it yet.

I found a solution :
Replacing
    let response = self.client.response().await?;

with
    let request = self.client.build().await;
    let response = request.send().await?;

in graph-rs/graph-http/src/intoresponse.rs (the way it was before the fatal commit)
My theory is that with client.response() locks the client while the request is in fligh, preventing all other request from being fired and somewhere the second request acquire a lock needed for the first ?
Writing a test for this case could be tricky.

I found a solution : Replacing
    let response = self.client.response().await?;

with
    let request = self.client.build().await;
    let response = request.send().await?;

in graph-rs/graph-http/src/intoresponse.rs (the way it was before the fatal commit)
My theory is that with client.response() locks the client while the request is in fligh, preventing all other request from being fired and somewhere the second request acquire a lock needed for the first ?
Writing a test for this case could be tricky.

Nice find. Ill take a look at it and see what I can find.

I think your right about how it acquires the lock. Because of the way both the async and non-async requests use the same macros via a trait in order to cut down on generated code, there is blocking happening on some of the calls that are made in graph-http, which was intentional but obviously there are consequences with every design decision. Because of that blocking, I believe that there may be a case here where the call to response() is acquiring a lock first, and then internally also calls build() which then requests to acquire a lock as well so we kind of end up blocking each other and this results in a dead lock.

Merged changes and published a new version. Close this if you feel comfortable the issue is resolved and let me know if you see any other issues as well. Thanks!

Just tested the new version and everything works great.
Thanks a lot for everything : your work on this project, reactivity, communication, etc.


Incremental=false using multiDex

We are using android-sdk-plugin in a new Android project.
In order to avoid 65K methods error, we have set up our project to use a multidex configuration and we have disabled the proguardCache, setting proguardCache in Android := Seq.empty
Here more info about our config:
proguardScala in Android := true,
useProguard in Android := true,
proguardCache in Android := Seq.empty

....

dexMaxHeap in Android := "2048m",
dexMulti in Android := true,
dexMinimizeMainFile in Android := true,
dexMainFileClasses in Android := multiDexClasses

Since we use multiDex, incremental=false is always shown in console and the compilation time is too long.
Are we missing anything in our config for using multiDex with incremental?
Thanks!

I was led to believe by the contributor of the multidex support that incremental dex is not supported by multidex. If this is not the case, I would appreciate a tested pull request to rectify this.

If you wonder, there was an opened issue about Dex tool support of multidex + incremental. It is mutably exclusive options currently, and dex -help states that (Or did I missed some major update?). Earlier versions of Dex with multidex were refusing to run if you'll pass --incremental. Things might have changed, but looking at the gradle users group I see that its unlikely - people have same complaints there.
----- Reply message -----
От: "Perry"<EMAIL_ADDRESS>Кому: "pfn/android-sdk-plugin"<EMAIL_ADDRESS>Тема: [android-sdk-plugin] Incremental=false using multiDex (#161)
Дата: ср, апр. 15, 2015 21:00
I was led to believe by the contributor of the multidex support that incremental dex is not supported by multidex. If this is not the case, I would appreciate a tested pull request to rectify this.
—
Reply to this email directly or view it on GitHub.

From latest build tools:
> $ANDROID_SDK/build-tools/22.0.1/dx --help
usage:
  dx --dex [--debug] [--verbose] [--positions=<style>] [--no-locals]
  [--no-optimize] [--statistics] [--[no-]optimize-list=<file>] [--no-strict]
  [--keep-classes] [--output=<file>] [--dump-to=<file>] [--dump-width=<n>]
  [--dump-method=<name>[*]] [--verbose-dump] [--no-files] [--core-library]
  [--num-threads=<n>] [--incremental] [--force-jumbo]
  [--multi-dex [--main-dex-list=<file> [--minimal-main-dex]]
  [--input-list=<file>]
  [<file>.class | <file>.{zip,jar,apk} | <directory>] ...
    Convert a set of classfiles into a dex file, optionally embedded in a
    jar/zip. Output name must end with one of: .dex .jar .zip .apk or be a directory.
    Positions options: none, important, lines.
    --multi-dex: allows to generate several dex files if needed. This option is
    exclusive with --incremental, causes --num-threads to be ignored and only
    supports folder or archive output.
    --main-dex-list=<file>: <file> is a list of class file names, classes defined by
    those class files are put in classes.dex.
    --minimal-main-dex: only classes selected by --main-dex-list are to be put in
    the main dex.
    --input-list: <file> is a list of inputs.
    Each line in <file> must end with one of: .class .jar .zip .apk or be a directory.
...

Hopefully one day it will work (and I think we'll know about that from loud announce of change in gradle plugin, there is no incremental multidex currently too)

And a quick demo:
> $ANDROID_SDK/build-tools/22.0.1/dx --dex --multi-dex --incremental my_project/build/intermediates/classes-proguard/debug/classes.jar
--incremental is not supported with --multi-dex
usage:
  dx --dex [--debug] [--verbose] [--positions=<style>] [--no-locals]
...

Thanks @pfn and @dant3 for the clarifications about the use of multiDex. I didn't know that multidex and incremental were mutually exclusive options. I hope one day it will work too.
I will close the issue now.

I've heard using native-multidex support instead of the compat multidex
/might/ be faster?
On Thu, Apr 16, 2015 at 2:54 AM, Francisco Diaz<EMAIL_ADDRESS>wrote:

Thanks @pfn https://github.com/pfn and @dant3 https://github.com/dant3
for the clarifications about the use of multiDex. I didn't know that
multidex and incremental were mutually exclusive options. I hope one day
it will work too.
I will close the issue now.
—
Reply to this email directly or view it on GitHub
https://github.com/pfn/android-sdk-plugin/issues/161#issuecomment-93696191
.

Perhaps, at runtime, as support library will stop the world to unzip your additional dex files on disk, then add them to classpath before processing further. I doubt there is a compile-time difference - you still have to run dex --multi-dex
----- Reply message -----
От: "Perry"<EMAIL_ADDRESS>Кому: "pfn/android-sdk-plugin"<EMAIL_ADDRESS>Копия: "Viacheslav Blinov"<EMAIL_ADDRESS>Тема: [android-sdk-plugin] Incremental=false using multiDex (#161)
Дата: чт, апр. 16, 2015 19:29
I've heard using native-multidex support instead of the compat multidex
/might/ be faster?
On Thu, Apr 16, 2015 at 2:54 AM, Francisco Diaz<EMAIL_ADDRESS>wrote:

Thanks @pfn https://github.com/pfn and @dant3 https://github.com/dant3

for the clarifications about the use of multiDex. I didn't know that

multidex and incremental were mutually exclusive options. I hope one day

it will work too.

I will close the issue now.

—

Reply to this email directly or view it on GitHub

https://github.com/pfn/android-sdk-plugin/issues/161#issuecomment-93696191

.

—
Reply to this email directly or view it on GitHub.

@dant3 https://github.com/saturday06/gradle-android-scala-plugin#52-option-2-use-multidex -- the claim is that "incremental multidex is significantly faster" -- do you know why they might say this?

@pfn from https://developer.android.com/tools/building/multidex.html#dev-build:

For the development flavor, set a minimum SDK version of 21. This setting generates multidex output much faster using the ART-supported format. For the release flavor, set a minimum SDK version which matches your actual minimum support level. This setting generates a multidex APK that is compatible with more devices, but takes longer to build.

@dant3 so does this mean that is already supported in this plugin? excellent, thanks (flavors can be simulated by using the flavorOf decorator, or just manually copy()ing an existing Project)

I'm not entirely sure, there might be some magic behind the scene of gradle plugin. Anyway you can try it, in the leanest possible way just by changing sdk version for debug build type.

I haven't tried multidex at all, as I focus on using proguard-cache as much
as possible.
On Wed, Apr 22, 2015 at 9:02 AM, Viacheslav Blinov<EMAIL_ADDRESS>
wrote:

I'm not entirely sure, there might be some magic behind the scene of
gradle plugin. Anyway you can try it, in the leanest possible way just by
changing sdk version for debug build type.
—
Reply to this email directly or view it on GitHub
https://github.com/pfn/android-sdk-plugin/issues/161#issuecomment-95247082
.

I'll take a look at that as soon as I'll have a chance.

So, after having a quick check with gradle project which has about 80k of methods after proguard I see clean build time reduce from 90 seconds to 70 seconds which is already something. The dx used in the same way as always:
$ANDROID_SDK/build-tools/21.1.2/dx -JXmx2048M --dex --verbose --no-optimize --multi-dex --output $MY_PROJECT/build/intermediates/dex/debug --input-list=$MY_PROJECT/build/intermediates/tmp/dex/debug/inputList.txt

However I don't see any build time change after quick check with sbt by changing minimal sdk version. That more interesting here, is I don't see anything special in call to dx tool, it simply does not have any options on how to create dex file, such that it could know about existance of api level 21 and art. So it goes to the magic done in gradle plugin... I'll dig into it's sources

Possibly: https://android.googlesource.com/platform/tools/base/+/master/build-system/gradle-core/src/main/groovy/com/android/build/gradle/internal/TaskManager.groovy#2145

So somewhy the magic that I see in TaskManager you referenced does not works on my huge gradle-based project, but I can clearly see it in action following the build definition referenced in gradle scala android plugin.
It looks like the magical "incremental mode" happens here:
https://android.googlesource.com/platform/tools/base/+/master/build-system/gradle-core/src/main/groovy/com/android/build/gradle/internal/TaskManager.groovy#2114
So it means they actually predex libraries if your sdk is at least 21. The block you mentioned should not run for non-legacy multidex as far as I can see, and legacy definition here is:
https://android.googlesource.com/platform/tools/base/+/master/build-system/builder/src/main/java/com/android/builder/core/VariantConfiguration.java#1900
So we just need to add predexing for similar build configuration and we're done.

@franciscodr If you're still interested, 1.4.2-SNAPSHOT (which you have to publish local) has the v21+ multidex optimizations. It's helping my dev cycle dramatically, and now works with proguard/proguardCache as well.

c11136f878cedf602363f4ba29ce585a7ebf04f8

Thanks @pfn, I'll take a look at it.


MagicNumber add ignoreOnClassesPattern (same as LateinitUsage)

I'd like to add the configuration property ignoreOnClassesPattern in the MagicNumber rule with the same behavior as in LateinitUsage.

I'm not sure about it. What kind of classes you would like to ignore?

Again for Tests :D

Before releasing 1.0.0 we should come up with a consistent way either something along the lines of ignoreOnClassesPattern or #227. #227 would definitely be the better long term solution.

I added the 1.0 milestone to #227 to make sure we have a solution.

Then I'll close this in favor of #227


ARM Template in Bicep

Added ARM Template in Bicep
Modified ARM Template in JSON to match with the ARM Template in Bicep
Modified GitHub Action workflow file to do the OCP Cluster deployment using the ARM Template in Bicep

Related to the issue https://github.com/IBM/zmodstack-deploy/issues/18.

Changes look good to me. Added some comments for future consideration.
Also, it looks like the generated mainTemplate.json will have some metadata inserted that's new for every build? Will that cause any confusion with git commit history on this file? Should we move the generated JSON to be something that we hold as an asset outside of the git commits?

@ivandov I have regenerated the mainTemplate.json in the GitHub repository to match with the mainTemplate.bicep. What I am thinking is to update the mainTemplate.json whenever there are some changes in mainTemplate.bicep, so that both files will be in sync. Also, in the GitHub Action, for ARM-TTK execution, there is a similar mainTemplate.json created from mainTemplate.bicep. Not sure if I have answered your query.


Suggested optimizations in DLibHOGFaceDetector

While looking into #13 issue (found at stackoverflow), I found that your way of using dlib face detection can be optimized for running about 2x-20x times faster:

You should construct face detector once inside constructor

virtual inline int det(const cv::Mat& image) {
   LOG(INFO) << "com_tzutalin_dlib_PeopleDet go to det(mat)";
   dlib::frontal_face_detector detector = dlib::get_frontal_face_detector();

Here you are constructing dlib::frontal_face_detector every call of detection function. Consider moving it into constructor - you will get up to 2x performance gain

Your code will not work with RGBA and GRAYSCALE images

 dlib::cv_image<dlib::bgr_pixel> img(image);
    mRets = detector(img);

If image (cv::Mat) will be not an BGR image, your code will crash. Consider adding something like this:
if (image.channels() == 4)
cv::cvtColor(image, image, CV_BGRA2BGR);
else if (image.channels() == 1)
cv::cvtColor(image, image, CV_GRAY2BGR);

Neither face detection nor shape prediction (landmarks) need color information. Consider converting all images into greyscales and running detector on them - this will give you 2x performance gain

No need to detect small faces.
Dlib face detector will detect faces with size of 80x80 and larger. While modern smartphones will capture 10+ MP images. Face detector will run several seconds for each frame.
I recommend you adding parameter that will limit minimal detected face size so you can downscale input image several times to skip small faces.

unsigned min_face_size = 200; //px
double k = 80.0 / min_face_size;
cv::resize(image, image, cv::Size(), k, k);

Also making region of interest and cropping image is extremely efficient in video processing

shape_predictor can be constructed once and made static
This object takes extremely large amount of RAM (about 100 MB) and construction time should be about 5+ seconds. If somebody will need several detectors (or construct/destruct it several times) - this object (shape predictor) will be deserialized several times, while its operator() is const. Documentation says that you can use one global shape predictor (static class member) safely from several threads

making Release build.
99% of Dlib's code is based on headers, and making debug build of your library will produce inefficient code. Consider running ndk-build in release mode with NDK_BUILD=0 param. This is also a possible solution of #13 issue

I am not developing Android code so I can't make PR for this. And all of this is just a suggestion. As you are the author - feel free to ignore them :)

HI @e-fominov ,
Cool! Thanks for your suggestions. I will try to change all of them next week.

Once I submit the change and test them, I will let you know how much it improve.
Thanks again

Hi @e-fominov
I fixed number 1 and 2 as you mentioned above. I will keep to improve them.
https://github.com/tzutalin/dlib-android/commit/8f36bcf164c9e475b9cc774b60be377552db6f64

Cool! Hope your code will work as fast as light.

This is indeed as fast as light, awesome.
@tzutalin please let me know if you're going to complete the optimizations in the next days, otherwise I'll try to do them on my own. I hope to be helpful at some point...
Thanks!

Hi @beraldofilippo ,
Good. I will try to fix number 3 & 4 as @e-fominov  mentioned. If you have fixed and verified them or come up with better solutions, please feel free to let me know or send a pull-request. I am not sure when I will be available to complete that.


Can no longer create an editable install of typeshed-stats on Windows after upgrading to uv==0.1.3

I was able to create an editable install of typeshed-stats fine on Windows locally with uv==0.1.1, and I'm still able to on macOS. However, after upgrading from uv==0.1.1 to uv==0.1.3 on Windows, I now see this (using PowerShell):
PS C:\Users\alexw\coding\typeshed-stats> uv venv env
Using Python 3.12.1 interpreter at C:\Users\alexw\AppData\Local\Programs\Python\Python312\python.exe
Creating virtualenv at: env
PS C:\Users\alexw\coding\typeshed-stats> env\scripts\activate
(env) PS C:\Users\alexw\coding\typeshed-stats> uv pip install -e ".[dev]"
error: Failed to build editables
  Caused by: Failed to build editable: file:///C:/Users/alexw/coding/typeshed-stats
  Caused by: Failed to install requirements from build-system.requires (resolve)
  Caused by: No solution found when resolving: hatchling, hatch-vcs
  Caused by: Reading from cache archive failed: check bytes error: check failed for tuple struct member 0: check failed for slice index 0: check failed for struct member files: check failed for struct member wheels: check failed for slice index 0: check failed for struct member file: check failed for struct member requires_python: invalid tag for enum: 156

Hmmm... probably a duplicate of #1571, I guess?

The output if I run uv pip install -e ".[dev]" --verbose:

 uv::requirements::from_source source=-e .[dev]
    0.003862s DEBUG uv_interpreter::virtual_env Found a virtualenv through VIRTUAL_ENV at: C:\Users\alexw\coding\typeshed-stats\env
    0.005343s DEBUG uv_interpreter::interpreter Using cached markers for: \\?\C:\Users\alexw\coding\typeshed-stats\env\Scripts\python.exe
    0.005479s DEBUG uv::commands::pip_install Using Python 3.12.1 environment at C:\Users\alexw\coding\typeshed-stats\env\Scripts\python.exe
 uv_client::flat_index::from_entries
 uv_installer::downloader::build_editables
      0.012075s   0ms DEBUG uv_distribution::source Building (editable) file:///C:/Users/alexw/coding/typeshed-stats
   uv_dispatch::setup_build package_id="file:///C:/Users/alexw/coding/typeshed-stats", subdirectory=None
     uv_resolver::resolver::solve
          0.028772s   0ms DEBUG uv_resolver::resolver Solving with target Python version 3.12.1
       uv_resolver::resolver::choose_version package=root
       uv_resolver::resolver::get_dependencies package=root, version=0a0.dev0
            0.029515s   0ms DEBUG uv_resolver::resolver Adding direct dependency: hatch-vcs*
            0.029749s   0ms DEBUG uv_resolver::resolver Adding direct dependency: hatchling*
       uv_resolver::resolver::choose_version package=hatch-vcs
         uv_resolver::resolver::package_wait package_name=hatch-vcs
     uv_resolver::resolver::process_request request=Versions hatch-vcs
       uv_client::registry_client::simple_api package=hatch-vcs
         uv_client::cached_client::get_cacheable
           uv_client::cached_client::read_and_parse_cache file=\\?\C:\Users\alexw\AppData\Local\uv\cache\simple-v0\pypi\hatch-vcs.rkyv
     uv_resolver::resolver::process_request request=Versions hatchling
       uv_client::registry_client::simple_api package=hatchling
         uv_client::cached_client::get_cacheable
           uv_client::cached_client::read_and_parse_cache file=\\?\C:\Users\alexw\AppData\Local\uv\cache\simple-v0\pypi\hatchling.rkyv
     uv_resolver::resolver::process_request request=Prefetch hatchling *
     uv_resolver::resolver::process_request request=Prefetch hatch-vcs *
              0.033306s   2ms DEBUG uv_client::cached_client Found stale response for: https://pypi.org/simple/hatch-vcs/
              0.033573s   2ms DEBUG uv_client::cached_client Sending revalidation request for: https://pypi.org/simple/hatch-vcs/
           uv_client::cached_client::revalidation_request url="https://pypi.org/simple/hatch-vcs/"
              0.034468s   2ms DEBUG uv_client::cached_client Found stale response for: https://pypi.org/simple/hatchling/
              0.034637s   2ms DEBUG uv_client::cached_client Sending revalidation request for: https://pypi.org/simple/hatchling/
           uv_client::cached_client::revalidation_request url="https://pypi.org/simple/hatchling/"
              0.134278s 103ms DEBUG uv_client::cached_client Found not-modified response for: https://pypi.org/simple/hatch-vcs/
           uv_client::cached_client::refresh_cache file=\\?\C:\Users\alexw\AppData\Local\uv\cache\simple-v0\pypi\hatch-vcs.rkyv
error: Failed to build editables
  Caused by: Failed to build editable: file:///C:/Users/alexw/coding/typeshed-stats
  Caused by: Failed to install requirements from build-system.requires (resolve)
  Caused by: No solution found when resolving: hatchling, hatch-vcs
  Caused by: Reading from cache archive failed: check bytes error: check failed for tuple struct member 0: check failed for slice index 0: check failed for struct member files: check failed for struct member wheels: check failed for slice index 0: check failed for struct member file: check failed for struct member requires_python: invalid tag for enum: 156

Yeah this looks like a cache upgrade bug, if you uv clean it should be fixed

Yeah this looks like a cache upgrade bug, if you uv clean it should be fixed

Yup, can confirm that fixed things!

Is the uv version not a part of our cache key?

No, the cache buckets have their own versions that we can bump. I need to look back at the history to see if we changed something in the cache representation between versions. It’s possible that I was supposed to bump a version.

Fun fact: I only ran into this because I was trying to repro #1612 locally 😄

Ok, I believe I've confirmed locally that this was caused by https://github.com/astral-sh/uv/pull/1556. I changed one of the cached structs, and that breaks the zero-copy representation. I should've bumped the cache version.

Gonna merge with https://github.com/astral-sh/uv/issues/1571.


Logging /ban in game

Is your feature request related to a problem? Please describe.
The panel currently logs when you ban someone with an expiry date on the panel with a warning, it would be good if it also logged a /ban in-game with a warning too.
Describe the solution you'd like
A warning placed on the banned persons account when they are banned FROM THE CITY. This already happens when banning someone from the panel.
Describe alternatives you've considered
N/A
Additional context
N/A

This would be very difficult to do and only possible with some crazy 'hack' from Marius' side what I know. Instead, I've implemented this feature directly into the framework, so whenever you use the 'ban' command to ban someone, it should now insert a warning into the warnings table.


Generated taxonomy term models are not ordered based on the order in Kontent.ai

Brief bug description
Taxonomy terms in the models/project/taxonomies.ts are not always ordered as they are in Kontent.ai.
Expected behavior
The taxonomy terms are ordered as they appear in the Kontent.ai app as the order is explicitly defined (e.g. for displaying them in the UI in the defined order).

Currently, most items are ordered alphabetically based on their name/codename. I guess that for some scenarios it might be useful for them to be ordered the same way as they are in K.ai, but it seems a bit magical for someone to "know" this and depend on this (since most other items do not really have a specific order to them).
I can introduce a configuration option to preserve the order for taxonomies, is it something we want to have?

After internal discussion, we'll preserve the order items in which they appear in UI where possible.


animated andriod

Issue Type:

[ ] Bug Report
[x] Feature Request
[ ] Documentaion

**Describe **

i made an animated android with gradient background  with  html and css.

Screenshots

https://user-images.githubusercontent.com/96977189/163044270-4a63e897-6ac2-46bd-9151-e348149a8236.mp4


How to check when merging of formats gets completed?

When importing youtube-dl we have progress_hook to get download status, but how to know when format merging has finished?

I just had the same problem.
But, if you think about it: merging has finished when the download/extract_info/... function returns.
To get the final filename F.E: use:
info = ydl.extract_info(url, download=False)
ydl.process_info(info)
print "Filename %s" % info['_filename']

Or use prepare_filename(info)


[do not merge] WIP Faster tests

Just wanted to share what I'm working on to gather some ideas.
@mfojtik @soltysh @bparees PTAL
I believe in the repositories for Source-To-Image builder images we should focus on testing the two pieces of code that live in this repo: assemble and run scripts.
Test cases should exercise the different ways that these scripts can operate.
We may also test that commands that need to be activated via SCL work out of the box in bash sessions.
On the other hand, seems to me out of scope to test that generally sti build, sti usage etc, "works". The sti tool should be tested in openshift/source-to-image repo.
This is WIP, the plan is to migrate all away from bash.
In one particular run, 2.0/test/run took 1'30" to complete. go test 2.0/test/run_test.go -parallel=3 took 35" (no point in trying to be scientific here, since we depend on things like rubygems.org). The speedup is thanks to running the builds in parallel.

Some of this can become an importable, reusable, package for all sti-*

If you're able to extract common part, I'm pretty sure we could safely move those to become part of sti command, how about that?

Lost traction, closing this.


Unwired geocoding help

I'm trying to set up unwired reverse geocoding.
Added lines to traccar.xml:
<entry key='geocoder.enable'>true</entry>
<entry key='geocoder.type'>unwired</entry>
<entry key='geocoder.url'>https://unwiredlabs.com/v2/search.php?accept-language=ru</entry>
<entry key='geocoder.key'>xxxxxxxxxxxxx</entry>

Traccar starts but gives out addresses in English.
I tried this:
<entry key='geocoder.url'>https://unwiredlabs.com/v2/search.php?accept-language=ru,token=xxxxxxxxxxxxx</entry>
Addresses are still in English.
Later tried like this:
<entry key='geocoder.url'>https://unwiredlabs.com/v2/search.php?token=xxxxxxxxxxxxx&accept-language=ru</entry>
& this:
<entry key='geocoder.url'>https://unwiredlabs.com/v2/search.php?accept-language=ru&token=xxxxxxxxxxxxx</entry>
And traccar did not start with errors.
When I make an address request in the unwired dashboard, I get this result:
{
    "status": "ok",
    "balance": 10000,
    "address": {
        "house_number": "10 с4",
        "road": "Большая Тульская улица",
        "suburb": "Даниловский",
        "city": "Danilovsky District",
        "county": "Southern Administrative Okrug",
        "state": "Moscow",
        "postcode": "115191",
        "country": "Russian Federation",
        "country_code": "ru",
        "display_name": "10 с4, Большая Тульская улица, Даниловский, Danilovsky District, Southern Administrative Okrug, Moscow, 115191, Russian Federation"
    }
}

And this is exactly what I want.
The official documentation says the following:
HTTP Request
GET https://unwiredlabs.com/v2/search.php?token=YOUR_API_TOKEN&lat=LATITUDE&lon=LONGITUDE
Query Parameters:
token
lat
lon
zoom
accept-language

Accept Language
Preferred language order for showing search results, overrides the value specified in the Accept-Language HTTP header. Either uses standard rfc2616 accept-language string or a simple comma separated list of language codes.
Country Codes
Limit search results to a specific country (or a list of countries). Should be the ISO 3166-1alpha2 code. Here is a sample:
Country code:
de    Germany
gb    United Kingdom
us     United States of America

Tell me please, do I configure the reverse geocoding correctly from this provider?
And how to get the traccar to request addresses in other languages?

It looks similar to Nominatim provider. That's why it works, but it doesn't take extra parameters in the URL.

And is there a way to request these parameters?
How the traccar makes a request to the server that he answers it in English.
My server is running on windows server 2012r2 and for me the big problem is to install my geo server, because the gisgraphy requires money to download maps, photon works but it does not supported the tracсar and for nominatim need to run a virtual machine.
It turns out that on windows there are no normal ways to receive free reverse geocoding without launching a virtual machine?

I don't follow your logic. Is Unwired a free service?
As for parameters, at the moment you can add anything extra only by changing the code.

I just got it for a very small amount.
And there is then the opportunity to implementing support for photon?
In this post https://www.traccar.org/forums/topic/photon-support/ you said that adding his support is fairly easy.

Added support for language parameter.

Thanks a lot for your help.