Realm subproperty and NSPredicate

Hi,
I'm getting an error when I trying to make a NSPredicate with subproperty;
class InfoPoint: Object {
    dynamic var id = ""
    dynamic var name: String
    dynamic var location: LocationProperty?
}

and
class LocationProperty: Object {
    dynamic var lat: Double = 0.0
    dynamic var lng: Double = 0.0
}

When I execute this query:
let topLeftPredicate = NSPredicate(format: "%K <= %f AND %K >= %f", latitudeKey, box.topLeft.latitude, longitudeKey, box.topLeft.longitude)
let bottomRightPredicate = NSPredicate(format: "%K >= %f AND %K <= %f", latitudeKey, box.bottomRight.latitude, longitudeKey, box.bottomRight.longitude)
let compoundPredicate = NSCompoundPredicate(andPredicateWithSubpredicates: [topLeftPredicate, bottomRightPredicate])

Results.filter(compoundPredicate)

I'm getting this error:
*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<RLMAccessor_v0_Marina 0x7fcf3967f270> valueForUndefinedKey:]: this class is not key value coding-compliant for the key location.lat.'

I tried with block version of NSPredicate but Realm doesn't support it. Any idea?
Thanks!

The code as provided doesn't compile so I suspect you've edited it down from a larger example. Can you share a more complete example of what you're doing?
Here's a working test I threw together based on the code you provided:
class InfoPoint: Object {
    dynamic var id = ""
    dynamic var name: String = ""
    dynamic var location: LocationProperty?
}

class LocationProperty: Object {
    dynamic var lat: Double = 0.0
    dynamic var lng: Double = 0.0
}

let realm = Realm()

try! realm.write {
    realm.create(InfoPoint.self, value: ["LKPRT", "Lakeport, CA", [39.0431, -122.9158]])
    realm.create(InfoPoint.self, value: ["CHCH", "Christchurch, New Zealand", [-43.5300, 172.6203]])
}

var results = realm.objects(InfoPoint).filter("location.lat > %f AND location.lng < %f", 39, 120)
print("Found \(results.count) results")
print("The first result's ID is \(results.first!.id)")

results = realm.objects(InfoPoint).filter("location.lat < %f AND location.lng > %f", 0, 0);
print("Found \(results.count) results")
print("The first result's ID is \(results.first!.id)")

@bdash I've updated the query code and I tried setting manually "location.lat" key. Only fails if I pass keys as variable like example

@bdash After see your code, I'm tried this workaround:
let topLeftPredicate = NSPredicate(format: "\(latitudeKey) <= %f AND \(longitudeKey) >= %f", box.topLeft.latitude, box.topLeft.longitude)
let bottomRightPredicate = NSPredicate(format: "\(latitudeKey) >= %f AND \(longitudeKey) <= %f", box.bottomRight.latitude, box.bottomRight.longitude)

and works fine!
Thanks!

In your example you're calling Results.filter(predicate), but that won't compile since filter is an instance method rather than a class method. How are you really invoking filter?
Also, what are the values of latitudeKey and longitudeKey?

The change from %K to Swift string interpolation wouldn't fix the error you're hitting. I suspect you changed something else at the same time that really fixed the issue. That said, I'd suggest sticking to NSPredicate's interpolation syntax for this since it'll correctly handle the case where the keys you're substituting are keywords or operators.

@bdash You can view my original code at this file:
https://github.com/mhergon/RealmGeoQueries/blob/0aa53e46d81899357cf23fdf4f363d3361f03935/GeoQueries.swift
And I only changed to string interpolation, I promise ;)

The exception you were seeing was:

*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<RLMAccessor_v0_Marina 0x7fcf3967f270> valueForUndefinedKey:]: this class is not key value coding-compliant for the key location.lat.'

This exception is being thrown by key-value coding machinery, typically called via -valueWithKeyPath:. Results.filter doesn't use KVC in its implementation so the exception cannot have come from calling Results.filter. That's why I think something else is going on.

@bdash Yes, after some tests, keeps failing.
Can you have some workaround?

I'm still not able to reproduce the problem you're seeing. I went so far as to download your project from GitHub, build and run the example, modify it to contain a second model class with a link to the example's Point class, and update the query to specify longitudeKey and latitudeKey as you describe. No sign of the exception you mentioned.
Can you share a self-contained example that reproduces the problem? If that's not possible then can you provide more information about what the code you're using looks like? What do your model classes look like, for instance? The snippet you mentioned contains a reference to a Marina class that you've not shared the definition for.

From looking at GeoQueries.swift I see the following:
let location = CLLocation(latitude: obj.valueForKey(latitudeKey) as! CLLocationDegrees, longitude: obj.valueForKey(longitudeKey) as! CLLocationDegrees)

That looks like the culprit. valueForKey doesn't traverse key paths, so it tries to access "location.lat" as a property of obj. valueForKeyPath traverses key paths so it'll load the location property from obj, then use valueForKey to retrieve the lat property from it.

@bdash The first exception occurs at "filterGeoBox:" method. So, above code has not executed...
I attached an example code with exception.
Thanks!
Subproperty Fails.zip

Thanks for the reproducible test case. When running the application I see an exception like so:
2015-12-15 12:44:53.672 Subproperty Fails[10245:440394] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<RLMAccessor_v0_Marina 0x7ff3ac805bd0> valueForUndefinedKey:]: this class is not key value coding-compliant for the key location.lat.'
*** First throw call stack:
(
	0   CoreFoundation                      0x0000000101501e65 __exceptionPreprocess + 165
	1   libobjc.A.dylib                     0x0000000103241deb objc_exception_throw + 48
	2   CoreFoundation                      0x0000000101501aa9 -[NSException raise] + 9
	3   Foundation                          0x000000010195d888 -[NSObject(NSKeyValueCoding) valueForUndefinedKey:] + 226
	4   Realm                               0x0000000100e15ae0 -[RLMObjectBase valueForUndefinedKey:] + 352
	5   Foundation                          0x00000001018b3997 -[NSObject(NSKeyValueCoding) valueForKey:] + 280
	6   Realm                               0x0000000100e1592d -[RLMObjectBase valueForKey:] + 237
	7   GeoQueries                          0x0000000100dab121 _TFFeRdq_C10RealmSwift6Object_10GeoQueriesCS_7Results15filterGeoRadiusuRdq_S0__FGS2_q__FTVSC22CLLocationCoordinate2D6radiusSd13sortAscendingGSqSb_11latitudeKeySS12longitudeKeySS11distanceKeySS_GSaq__U_FS0_Sb + 305
	8   GeoQueries                          0x0000000100daa9f7 _TPA__TFFeRdq_C10RealmSwift6Object_10GeoQueriesCS_7Results15filterGeoRadiusuRdq_S0__FGS2_q__FTVSC22CLLocationCoordinate2D6radiusSd13sortAscendingGSqSb_11latitudeKeySS12longitudeKeySS11distanceKeySS_GSaq__U_FS0_Sb + 263
	9   GeoQueries                          0x0000000100dab747 _TTRGRdq_C10RealmSwift6Object_XFo_oq__dSbzoPSs9ErrorType__XFo_iq__dSbzoPS1___ + 39
	10  libswiftCore.dylib                  0x000000010367f8c4 _TFeRq_Ss12SequenceType_SsS_6filteruRq_S__fq_FzFzqqq_S_9GeneratorSs13GeneratorType7ElementSbGSaqqq_S_9GeneratorS0_7Element_ + 468
	11  GeoQueries                          0x0000000100da9a6a _TFeRdq_C10RealmSwift6Object_10GeoQueriesCS_7Results15filterGeoRadiusuRdq_S0__fGS2_q__FTVSC22CLLocationCoordinate2D6radiusSd13sortAscendingGSqSb_11latitudeKeySS12longitudeKeySS11distanceKeySS_GSaq__ + 1162
	12  GeoQueries                          0x0000000100da9590 _TFE10GeoQueriesC10RealmSwift5Realm10findNearbyuRdq_CS0_6Object_fS1_FTMq_6originVSC22CLLocationCoordinate2D6radiusSd13sortAscendingGSqSb_11latitudeKeySS12longitudeKeySS11distanceKeySS_GSaq__ + 688
	13  Subproperty Fails                   0x0000000100c58ca5 _TFFC17Subproperty_Fails18MainViewController11viewDidLoadFS0_FT_T_U_FGSqCSo7NSError_T_ + 709
	14  Subproperty Fails                   0x0000000100c58de7 _TTRXFo_oGSqCSo7NSError__dT__XFo_iT5errorGSqS____iT__ + 23
	15  Subproperty Fails                   0x0000000100c57b31 _TPA__TTRXFo_oGSqCSo7NSError__dT__XFo_iT5errorGSqS____iT__ + 81
	16  Subproperty Fails                   0x0000000100c592ff _TFFC17Subproperty_Fails18MainViewController7marinasFS0_FGSqFT5errorGSqCSo7NSError__T__T_U_FTCSo20NSURLSessionDataTaskGSqPSs9AnyObject___T_ + 879
	17  Subproperty Fails                   0x0000000100c5cf43 _TTRXFo_oCSo20NSURLSessionDataTaskoGSqPSs9AnyObject___dT__XFo_iTS_GSqPS0_____iT__ + 35
	18  Subproperty Fails                   0x0000000100c5c161 _TPA__TTRXFo_oCSo20NSURLSessionDataTaskoGSqPSs9AnyObject___dT__XFo_iTS_GSqPS0_____iT__ + 81
	19  Subproperty Fails                   0x0000000100c5cf77 _TTRXFo_iTCSo20NSURLSessionDataTaskGSqPSs9AnyObject____iT__XFo_oS_oGSqPS0____dT__ + 39
	20  Subproperty Fails                   0x0000000100c5cfcd _TTRXFo_oCSo20NSURLSessionDataTaskoGSqPSs9AnyObject___dT__XFdCb_dS_dGSqPS0____dT__ + 77
	21  AFNetworking                        0x0000000100d1b021 __116-[AFHTTPSessionManager dataTaskWithHTTPMethod:URLString:parameters:uploadProgress:downloadProgress:success:failure:]_block_invoke97 + 241
	22  AFNetworking                        0x0000000100d3e1db __72-[AFURLSessionManagerTaskDelegate URLSession:task:didCompleteWithError:]_block_invoke_2151 + 203
	23  libdispatch.dylib                   0x0000000104782e5d _dispatch_call_block_and_release + 12
	24  libdispatch.dylib                   0x00000001047a349b _dispatch_client_callout + 8
	25  libdispatch.dylib                   0x000000010478b2af _dispatch_main_queue_callback_4CF + 1738
	26  CoreFoundation                      0x0000000101461d09 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9
	27  CoreFoundation                      0x00000001014232c9 __CFRunLoopRun + 2073
	28  CoreFoundation                      0x0000000101422828 CFRunLoopRunSpecific + 488
	29  GraphicsServices                    0x0000000106a6bad2 GSEventRunModal + 161
	30  UIKit                               0x0000000101d1e610 UIApplicationMain + 171
	31  Subproperty Fails                   0x0000000100c5fb0d main + 109
	32  libdyld.dylib                       0x00000001047d792d start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException

Walking up the backtrace to find the caller of valueForKey we see:
_TFFeRdq_C10RealmSwift6Object_10GeoQueriesCS_7Results15filterGeoRadiusuRdq_S0__FGS2_q__FTVSC22CLLocationCoordinate2D6radiusSd13sortAscendingGSqSb_11latitudeKeySS12longitudeKeySS11distanceKeySS_GSaq__U_FS0_Sb

Demangling that name gives:
ext.GeoQueries.RealmSwift.Results<A where A: RealmSwift.Object>.(filterGeoRadius <A where A: RealmSwift.Object> (RealmSwift.Results<A>) -> (__C.CLLocationCoordinate2D, radius : Swift.Double, sortAscending : Swift.Bool?, latitudeKey : Swift.String, longitudeKey : Swift.String, distanceKey : Swift.String) -> [A]).(closure #1)

So the exception is coming from within filterGeoRadius. Changing the two calls to valueForKey to valueForKeyPath within filterGeoRadius gets me past this exception. It blows up slightly later due to trying to store to a dist property that doesn't appear to exist on any of the model classes. Tweaking the call to findNearby to drop the distanceKey parameter gets around that issue.

It works! Thank you @bdash


update material ui imports

CF https://material-ui.com/guides/minimizing-bundle-size/#option-1
The third level imports from Material UI are not accepted in the latest release of v4.
I have just updated these imports. It works in my local machine, if someone else can verify it works fine

Not tested directly but sounds good to me thanks Eloy!


Feat:github icon is missing in about section page

Describe the feature
github icon is missing in about section page
Add ScreenShots

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

i want to work on this issue can u plz assign me


Correct endpoint

Hello
What this PR does / why we need it:
Hardcoded endpoint have to be variabled.
Which issue (if any) this PR fixes:
Fixes # N/A

Even better to switch to:
command: "hbbs -r {{rustdesk_container_name}}.{{ansible_nas_domain}}:21117"


Schematics unexpected token error

I'm submitting a...

[ ] Regression (a behavior that used to work and stopped working in a new release)
[x] Bug report
[ ] Performance issue
[ ] Feature request
[ ] Documentation issue or request
[ ] Support request
[ ] Other... Please describe:

Current behavior
Schematics does not works.

$ yarn ng g @datorama/akita:as todos
yarn run v1.16.0
$ ng g @datorama/akita:as todos
Unexpected token ] in JSON at position 1052
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Expected behavior
Working schematics.
Minimal reproduction of the problem with instructions
Install Akita and try to use any schematics.
Environment

Angular version: 8.0.6 (cli)

For Tooling issues:
- Node version: 10.16.0
- Platform:  Windows

Hello, which version of Akita are you using ?
I cannot reproduce. I did :
ng new test-schematics
cd test-schematics
npm install @datorama/akita
ng g @datorama/akita:as todos

And it worked fine (node v10.15.0 on Windows10).
From my experience Unexpected token ] comes from an issue in your angular.json or nx.json (if you're using nrwl). Can you try again on a pristine project ?

@GrandSchtroumpf is right. It's working fine with the latest version.

All right, I'll take a look tomorrow morning. It's strange because my Angular CLI throws no error with default schematics, but you still can be right because I didn't verify it.

It really was an angular.json problem, trailing commas in different points inside the styles array. It just never come to me that the problem could be angular.json since the Angular schematics runs fine. Thanks for the support.


doc:Updates to Doc

Added Documentation for evb-discovery-firmware
Corrected typo in AD717x iio
Added ad411x to title in console and iio projects. Arranged TOC alphabetically.
Added increasing timeout section to limitations section. Added a note in ad7124 to increase capture timeout.

Hi all, I had to create a new PR due to some mishap. I have added the latest changes that was approved by you all.


Fixed permissions for GitHub action with screenshots.

Follow up to 97b7970c6479ef414175f22a009240ed0df8ce46.

This probably will not help if it's not merged.

I'm not sure that explicitly passing the token required?
I found this which seems to imply we should use pull_request_target: instead of pull_request:?

I'm not sure that explicitly passing the token required?
I found this which seems to imply we should use pull_request_target: instead of pull_request:?

It depends, action permissions are tricky and it works that way for new_contributor_pr.yml. Therefore, we can do the same here, or try the new pull_request_target way.

... or try the new pull_request_target way.

It doesn't work for me, I'm not sure if I want to experiment more :smile:

That's fair enough... Let us not battle further with the manifold mysteries of CI... 🧙🏻♂

Ah, looking at new_contributor_pr.yml it looks as though we're already using pull_request_target there and the implication is that you need that and also need to pass the token - according to this comment.

Sure, let's try both :shrug:


How can I hide a post?

I want to hide a post, I have tried both hidden: true and visible: 1, but it doesn't work. So, how can I hide a post?

html - Jekyll Github pages how to hide a post - Stack Overflow

You'll have to modify the _layouts/home.html for that.
Just enclose the  within a {% if post.visible %} block.
Will push a commit soon.

Sorry, visible: 1 should be visible: 0.
@thelehhman You also need to consider {%- if site.posts.size > 0 -%}, hidden or visible can affect the total number of posts.

You'll have to modify the _layouts/home.html for that.
Just enclose the  within a {% if post.visible %} block.
Will push a commit soon.

I have tried this method, but it doesn't work.

@thelehhman I have enclosed <li> within a {%- if !post.hidden -%} block, but it doesn't work.

! is not a valid operator in jekyll. You'll have to check post.visible == 1

@thelehhman Thank you, it works.


adding better error handling for cases where bad credentials are supp…

…lied
@michael-tims please review/merge. Kathleen was supplying credentials for a suspended account, and while it can successfully load the portal and get a token, it cannot save a map. So this ensures the errors are bubbled up.

@michael-tims updated


Missing IPv6 privacy extensions for undeclared interfaces

Issue description
I recognized that my laptop does not prefer temporary IPv6 addresses despite it being the default.
As I found out with nixos-option, networking.interfaces.wlp3s0.preferTempAddress is only set to true if there is any mention of the attrs such as networking.interfaces.wlp3s0.name = "wlp3s0". Otherwise it is "missing":
# This is also the case for the 'implicit' test case described below.
$ nixos-option networking.interfaces.wlp3s0.preferTempAddress
Value:
error: attribute 'wlp3s0' missing

Default:
true
...

As I had no mention of the wlp3s0 interface in my config, it was left without IPv6 Privacy Extensions being enabled, which I find to be a bit unintuitive.
I could imagine that this is not easy to fix as NixOS can't know about undeclared networking interfaces at evaluation time, but maybe there could be a clever explanation of it in the manual? Or maybe hardware-config.nix should contain declarations for all networking interfaces found at generation time? Or we set net/ipv6/conf/all/use_tempaddr=2?
Pinging @rnhmjoj, as they introduced the feature in https://github.com/NixOS/nixpkgs/pull/34492.
Steps to reproduce
Run these tests, observe the last one failing:
with import <nixpkgs> {};
lib.mapAttrsToList
  (name: module:
    import <nixpkgs/nixos/tests/make-test.nix> ({ pkgs, ...}:{
      name = "ipv6-use-tempaddr-${name}";
      nodes.machine = module;
      testScript = ''
        $machine->waitForUnit("network.target");
        $machine->succeed("ip addr show dev eth0");
        # this should work, as use_tempaddr is the default
        $machine->succeed("sysctl --values net/ipv6/conf/eth0/use_tempaddr | grep -F '2'");
      '';
    })
  )
  {

    # this works
    explicit = ({ config, pkgs, lib, ... }:{
        networking.interfaces.eth0.preferTempAddress = true;
      });

    # this works also, despite the option being not eplicitly set
    implicitWithDefinedAttribute = ({ config, pkgs, lib, ... }:{
        networking.interfaces.eth0.name = "eth0";
      });

    # this works not :(
    implicit = ({ config, pkgs, lib, ... }:{
      });

  }

Technical details

system: "x86_64-linux"
host os: Linux 4.14.101, NixOS, 18.09 (Jellyfish)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.1.3
channels(justin): "nixos-hardware, nixos-unstable-19.03pre166449.be445a9074f, nixos-18.03-18.03.133311.5d19e3e78fb"
channels(root): "nixos-hardware"
nixpkgs: /home/justin/nixpkgs

I believe it's a regression since 18.09: my Hydra builders run on stable (18.09) and they prefer the short one, and my current box is on unstable and prefers the long one (both share DHCP server and don't have explicitly configured interfaces).

@vcunat My test fails both for nixos-18.09 and nixos-unstable. Did you inspect with nixos-option?

$ nixos-option networking.interfaces
Value:
{ }

Let me increase the severity of this.  I find it quite bad if the default setting leaks your MAC address to most servers you communicate with.

I'm not sure around DHCP... maybe the server can affect this as well?

I don't know about my test failing but the option not working for undeclared interfaces is intended.
The linux kernel does have a sysctl option to enable privacy extensions on all interfaces, net.ipv6.conf.all.use_tempaddr, but it doesn't actually work because it only applies to interfaces that has yet to be created. By the time the option it is set all (physical) interfaces have been configured so it has no effect. Unfortunately they won't fix this problem se there is nothing we can do about it besides configuring each interface manually.
See https://bugzilla.kernel.org/show_bug.cgi?id=11655.

Surely there's some good way to use the privacy-friendly default without any explicit config.  At least on some of my NixOS machines this seems to work fine (unless I overlooked something).

@rnhmjoj I don't think there is any test failing, I wrote about the test case I provided in the issue.
I see the problem with net.ipv6.conf.all.use_tempaddr. If there is no easy way, maybe the way to go is to generate
...
  networking.interfaces = {
    wlp3s0 = {};
    enp0s25 = {};
  };
...

into hardware-configuration.nix?

Actually, on a machine where the short addresses are preferred I still get:
# sysctl net/ipv6/conf | grep use_tempaddr
net.ipv6.conf.all.use_tempaddr = 0
net.ipv6.conf.default.use_tempaddr = 0
net.ipv6.conf.eno1.use_tempaddr = 0
net.ipv6.conf.lo.use_tempaddr = -1

Unfortunately they won't fix this problem se there is nothing we can do about it besides configuring each interface manually.

I guess there is an option of setting the defaults in early initrd before loading the modules. Not sure if it is a good option.

@erictapen I see. The test I meant is nix-build nixos/tests/networking.nix --arg networkd false -A privacy
It's equivalent to your "explicit" variant and it's indeed fine.

Actually, on a machine where the short addresses are preferred I still get the same sysctl as on the one preferring the long addresses:

@vcunat I'm unsure what you mean by short addresses. In my case, temporary as well as dynamic addresses have the same size. I think the important attribute here is temporary:
$ ip addr show dev wlp3s0
3: wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether my:ma:ca:dd:re:ss brd ff:ff:ff:ff:ff:ff
                                   v
    inet6 GOODIPV6/64 scope global temporary dynamic
       valid_lft 6998sec preferred_lft 978sec
    inet6 BADIPV6CONTAININGMYMAC/64 scope global dynamic mngtmpaddr noprefixroute
       valid_lft 6998sec preferred_lft 978sec

OK, let me be concrete:
    inet6 2a02:768:2208:ed02::d9a/128 scope global noprefixroute
       valid_lft forever preferred_lft forever
    inet6 2a02:768:2208:ed02:42a8:f0ff:fead:a17b/64 scope global dynamic mngtmpaddr noprefixroute
       valid_lft 6837sec preferred_lft 1437sec

I mean, the ::xxx addresses are basically static, yes, but they leak very little information.  Leaking whole MAC seems much much worse.

Perhaps we should set boot.kernel.sysctl."net.ipv6.conf.default.use_tempaddr".

I refined my test, so that it actually checks for temporary addresses on the interface.
with import <nixpkgs> {};
lib.mapAttrsToList
  (name: module:
    import <nixpkgs/nixos/tests/make-test.nix> ({ pkgs, ...}:{
      name = "ipv6-use-tempaddr-${name}";
      nodes.machine = module;
      testScript = ''
        $machine->waitForUnit("network.target");
        # this should work, as there should be a temporary address assigned to eth0
        $machine->succeed("ip address show dev eth0 temporary | grep temporary");
      '';
    })
  )
  {

    # this works
    explicit = ({ config, pkgs, lib, ... }:{
        networking.interfaces.eth0.preferTempAddress = true;
      });

    # this also works, despite the option being not explicitly set
    implicitWithDefinedAttribute = ({ config, pkgs, lib, ... }:{
        networking.interfaces.eth0 = {};
      });

    # this works not :(
    default = ({ config, pkgs, lib, ... }:{
        boot.kernel.sysctl."net.ipv6.conf.default.use_tempaddr" = 2;
      });

    # this works not :(
    implicit = ({ config, pkgs, lib, ... }:{
      });

  }

$ nix build -f ipv6-test.nix --keep-going
...
[7 built (2 failed), 0.0 MiB DL]
error: build of '/nix/store/9h81kw8wkwbjllpqgk4picg83bg958ab-vm-test-run-ipv6-use-tempaddr-implicit.drv', '/nix/store/sprqr5jqqpf2bmf0wsr33xh3b7h2dc2c-vm-test-run-ipv6-use-tempaddr-default.drv' failed

@lheckemann Setting boot.kernel.sysctl."net.ipv6.conf.default.use_tempaddr" doesn't solve the issue as seen in the default test. I guess the reason for that is the same @rnhmjoj
explained in https://github.com/NixOS/nixpkgs/issues/56306#issuecomment-466796881.

I've done a "half-way" fix in the above commit, what might be missing is an option to make it configurable. However, I'd be in favour of just enabling them universally until someone complains that they really need MAC-based SLAAC addresses. Opinions?

That's smart: I didn't consider using udev. In my opinion EUI-64 addresses are just a terrible idea and should only be used for incoming connections but the existing option should be updated to configure that udev rule, though.

I'm not sure how the existing option can be used, since it's interface-specific, while the udev rule covers all interfaces.

Ok, my opinion at this point is that my commit should in fact be merged as is (plus documentation), since the per-interface preferTempAddress defaults to true and can still be disabled on a per-interface basis. I'll open a PR.

@lheckemann Yeah I guess it makes sense to open a PR. If there are any concerns about this particular solution (which I doubt), they would be better discussed there.

Fixed by #62835.


Go.mod update

Hi,
I just added a line to the dependencies to temporarily fix the build.

Please add Signed-off-by


Problem running demo: undefined symbol

I was able to get everything built but when I try to run the demo I get the following error which I'm having a hard time debugging:
$ bin/opensfm_run_all data/berlin
Running using Python command: python
Traceback (most recent call last):
  File "/home/gabe/code/OpenSfM/bin/opensfm", line 10, in <module>
    from opensfm import commands
  File "/home/gabe/code/OpenSfM/opensfm/commands/__init__.py", line 2, in <module>
    from . import extract_metadata
  File "/home/gabe/code/OpenSfM/opensfm/commands/extract_metadata.py", line 5, in <module>
    from opensfm import dataset
  File "/home/gabe/code/OpenSfM/opensfm/dataset.py", line 12, in <module>
    from opensfm import io
  File "/home/gabe/code/OpenSfM/opensfm/io.py", line 20, in <module>
    from opensfm import features
  File "/home/gabe/code/OpenSfM/opensfm/features.py", line 10, in <module>
    from opensfm import csfm
ImportError: /home/gabe/code/OpenSfM/opensfm/csfm.cpython-36m-x86_64-linux-gnu.so: undefined symbol: _ZN2cv7imwriteERKNS_6StringERKNS_11_InputArrayERKSt6vectorIiSaIiEE

I'm on Ubuntu 18.04. I installed the requirements via pip and apt. Any help is much appreciated.

Great that you solved it, @os-gabe. Multiple opencv version problems are tricky because cmake searches for opencv independently of python so you can end up linking to a different one.


Fix for fancy checkbox in firefox

While cross browser testing the theme i have seen that the checkboxes are not rendered. This pr is fixing that issue.

Can you pull down a copy of master and redo this pull request? It has merge conflicts and I assume it's because you need to do a git pull or rebase first

Not this should work fine.

Removed this section. No need to copy this to the community repo because it's already there (see data.xml)
I have also added some css rules that are making the main content looking nicer (useful for the docs site)

Added page templates for documentation site


feat: reorganize tooltip / information icons

ST-245
Motivation and context
Existing tooltip icon is very prominent and if repeated multiple times on the page it doesn’t really work.
A new smaller variation within 24x24 bounding box has been created.
We want to make the Tooltip icon smaller and gray for tooltip and popover use only. To avoid any confusions, we discussed the following with Sergiu:

rename existing Information Icon to InformationBubble icon
rename current Tooltip icon to Information icon
create a gray and small Tooltip icon

Before

Tooltip icon is used for Tooltips but also for Alert components
After

Tooltip icon is used for Tooltip and Popover use cases only
Information Icon is used in Alert components
InformationBubble Icon is not in use

Thank you for the review @Averethel
After syncing with Sergiu about the naming of icons, I changed a few things since your review:

Tooltip icon is for tooltip and popover only (it's small and gray)
Information icon can be used everywhere else: design is the same but it's bigger and color is not set

I see that we have 3 icons now, is that intentional?
Also, I'd advise against setting the colour on the icon directly as it restricts usage. Can we do that in the tooltip itself?

@Averethel, I modified 3 icons as follow:

Tooltip icon is now called Information Icon
Information icon is now called InformationBubble Icon
added a Tooltip Icon with a similar design than Information Icon but with enforced size and color.

Designers asked to reduce the size and change the color of the Tooltip Icon but we realized that the Tooltip icon is also used for Alert components, not only for Tooltips or Popover. Since this change of size and color should only apply to proper Tooltip Icons and to avoid any confusions in the future, I suggested to have 2 separate icons: the one as we know it but renamed as Information Icon and the Tooltip one.
By keeping 1 icon for both use cases, we would need to play with props and add the currentColor everywhere we use it. I think it makes it harder to keep it consistent across the platform.
What do you think?


Add ihaskell-graphviz to display graphs.

I've liberally copied a skeleton from ihaskell-gnuplot.
Example usage on my Mac:

This is great, thanks so much! I've wanted something like this for a long time :smile:.

My pleasure! I'll likely do a few more changes, but now that the footprint is here I guess the barrier to entry is low.


Unable to Launch IE with desired capabilities having :introduce_flakiness_by_ignoring_security_domains => true, :ignore_protected_mode_settings=>true

Meta -
Watir Version: 3.10.0
Selenium Version: 3.8.0
Browser Version: IE 11.0.9600.18977
Browser Driver Version: 3.8.0 (64-bit)
OS Version: Windows 7
Hi,
This is raja, I'm pretty new to ruby and Watir. But I had experience in Selenium using Java.
When I was trying to launch IE browser using Watir am getting error saying to disable the protected mode settings. But I have already disabled all my Protected Mode settings in Internet Options. But still I'm getting the error.
I believe Something un-expected was happening in the following method:
C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/ie/driver.rb:61:in 'create_capabilities'
So, When I override the 'create_capabilities' method inside the script, I'm able to launch the browser.
Please see the comment section for the script with over-ride method
Expected Behavior -
Browser Should launch Successfully
Actual Behavior -
2018-05-09 11:18:31 WARN Watir You can now pass values directly into Watir::Browser opt without needing to use :desired_capabilities
C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/remote/response.rb:69:in assert_ok': Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mode must be set to the same value (enabled or disabled) for all zones. (Selenium::WebDriver::Error::SessionNotCreatedError) 	from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/remote/response.rb:32:in initialize'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/remote/http/common.rb:81:in new' 	from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/remote/http/common.rb:81:in create_response'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/remote/http/default.rb:104:in request' 	from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/remote/http/common.rb:59:in call'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/remote/bridge.rb:164:in execute' 	from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/remote/bridge.rb:97:in create_session'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/remote/bridge.rb:53:in handshake' 	from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/ie/driver.rb:45:in initialize'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/common/driver.rb:46:in new' 	from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver/common/driver.rb:46:in for'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/selenium-webdriver-3.8.0/lib/selenium/webdriver.rb:84:in for' 	from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/watir-6.10.0/lib/watir/browser.rb:48:in initialize'
from C:/Users/21946417/Documents/NetBeansProjects/HMSS_Selenium/test/Validation/selenium_test.rb:9:in new' 	from C:/Users/21946417/Documents/NetBeansProjects/HMSS_Selenium/test/Validation/selenium_test.rb:9:in '
Steps to reproduce -
require 'watir'
capsArray = {
:introduce_flakiness_by_ignoring_security_domains => true,
:ignore_protected_mode_settings=>true
}
caps = Selenium::WebDriver::Remote::Capabilities.ie(capsArray)
browser = Watir::Browser.new :ie, :desired_capabilities => caps
browser.goto 'https://www.google.com'
(or)
require 'watir'
browser = Watir::Browser.new :ie
browser.goto 'https://www.google.com'

Over-ridding Selenium::WebDriver::IE::Driver.create_capabilities method
require 'watir'
module Selenium
module WebDriver
module IE
class Driver < WebDriver::Driver
include DriverExtensions::TakesScreenshot
        private
        def create_capabilities(opts)
           caps = opts.delete(:desired_capabilities) { Remote::Capabilities.internet_explorer }
           options = opts.delete(:options) { Options.new }

           options.ignore_protected_mode_settings = true

           native_events = opts.delete(:native_events)
           unless native_events.nil?
              WebDriver.logger.deprecate ':native_events', 'Selenium::WebDriver::IE::Options#native_events='
              options.native_events = native_events
           end

           # Backward compatibility with older IEDriverServer versions
           caps[:ignore_protected_mode_settings] = options.ignore_protected_mode_settings
           caps[:native_events] = options.native_events

           options = options.as_json
           caps.merge!(options) unless options.empty?

           caps
        end

     end # Driver
  end # IE

end # WebDriver
end # Selenium
capsArray = {
:introduce_flakiness_by_ignoring_security_domains => true,
:ignore_protected_mode_settings=>true
}
caps = Selenium::WebDriver::Remote::Capabilities.ie(capsArray)
browser = Watir::Browser.new :ie, :desired_capabilities => caps
browser.goto 'https://www.google.com'

Is there any need that you need to do through IE? Because I face many
problem when I use IE driver, so I go for WATIR -CLASSIC which is actually
deprecated. If possible automate through chrome or firefox .
On Wed 9 May, 2018, 11:58 AM evnraja32<EMAIL_ADDRESS>wrote:

Over-ridding Selenium::WebDriver::IE::Driver.create_capabilities method
require 'watir'
module Selenium
module WebDriver
module IE
class Driver < WebDriver::Driver
include DriverExtensions::TakesScreenshot
    private
    def create_capabilities(opts)
       caps = opts.delete(:desired_capabilities) { Remote::Capabilities.internet_explorer }
       options = opts.delete(:options) { Options.new }

       options.ignore_protected_mode_settings = true

       native_events = opts.delete(:native_events)
       unless native_events.nil?
          WebDriver.logger.deprecate ':native_events', 'Selenium::WebDriver::IE::Options#native_events='
          options.native_events = native_events
       end

       # Backward compatibility with older IEDriverServer versions
       caps[:ignore_protected_mode_settings] = options.ignore_protected_mode_settings
       caps[:native_events] = options.native_events

       options = options.as_json
       caps.merge!(options) unless options.empty?

       caps
    end

 end # Driver

end # IE
end # WebDriver
end # Selenium
capsArray = {
:introduce_flakiness_by_ignoring_security_domains => true,
:ignore_protected_mode_settings=>true
}
caps = Selenium::WebDriver::Remote::Capabilities.ie(capsArray)
browser = Watir::Browser.new :ie, :desired_capabilities => caps
browser.goto 'https://www.google.com'
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/watir/watir/issues/722#issuecomment-387634030, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AeOm7reyMEn_rAJW_nQxCmCLqyBcEwlPks5twoyhgaJpZM4T3xsI
.

Hi @Rajagopalan-M ,
Yes, The application which we test only supports IE and EDGE.
We also used WATIR-CLASSIC and WATIR-Webdriver. But the problem is we are supposed to maintain two different framework and suites for IE framework(here framework refers to our project framework that supports automating our application) built using Watir-Classic and an EDGE framework built on Watir-Webdriver. As a result, we have never seen a successful 100% pass in our batch executions, in one or other way we hit with the errors.
This approach making us put a lot of efforts in resolving our test framework issues.
To say an example :
handling pop-up in IE was different from EDGE. For the same in Watir-Classic rautomation was used to handle the alert, whereas, in Watir-Webdriver, Selenium-Webdriver alert mechanism was used.
This way of handling making us to put lot of efforts in handling our project framework.
We thought of migrating from Watir-Classic and Watir-Webdriver to Watir-6.10.0 the latest version which built on top of Selenium and which can support both IE, EDGE and other browser too.
Correct me, if my understanding wrong in the above comments.

@evnraja32
Actually, WATIR(Powered by Selenium) is higher version of old WATIR-Webdriver. But WATIR-Classic is no way related to WATIR(Powered by Selenium) because WATIR-Classic uses WIN32OLE to automate the IE window but WATIR and old version of WATIR(watir-webdriver) is using Selenium under the hood to automate the Browser.
Yes, you are right watir-classic uses rautomation window to handle the pop up whereas WATIR uses different approaches.
Since WATIR-Classic is deprecated, I wouldn't ask you to use WATIR-Classic but compared to using IE driver to drive the IE window, it's far more better to use WATIR-classic.
I had the same problem when I was automating my local application and portal.
I will suggest you a way here, Input the browser type in your excel, like it's IE or EDGE, and include the code in your program like one given below
if browsertype.eql? 'IE'
  require 'watir-classic'
elsif browsertype.eql? 'EDGE'
  require 'watir'
end

This way you can use WATIR(Powered by Selenium) and WATIR-classic in your project.

Here is how we deal with the protected modes in IE - https://gist.github.com/kapoorlakshya/71839d33d6e4938a191b91a55d2f225e
You can wrap that code in a method and invoke it right before launching the browser.
And I would personally recommend sticking with watir so that you can run the same code on all browsers instead of having to switch between watir and watir-classic, which do not have the same API.

Can you try this again since the recent changes in https://github.com/watir/watir/pull/803 (in 6.15.0)? I believe it should have taken care of this.


How to convert a conch-bay-export json file into a conch-bay-import file?

Before I uninstalled conch bay, I exported a conch-bay-export json file. But when I tried to import this file, it said 'JSON Parse error: Unexpected character:{'. So how could I convert the export file into a import file?

Actually there is a bug of exporting in v1.10.0. Please select "Split and Import" on importing. You can also send the mail to us for help via the support in the bottom of the home screen.
Due to Nintendo's negative attitude towards 3rd-party apps, we no longer update Conch Bay in the store since v1.10.0. You can update it through TestFlight (iOS) or download unsigned APKs in Actions (Android). Thanks for your understanding.


Deprecate PlanToConfiguration?

Is there any need to have both PlanToConfiguration and PlanToConfigurations? Why not just have the latter and pass a single or multiple goals? I know a single goal is a numpy.ndarray and multiple goals are a list of numpy.ndarray but we should be able to deal with that inside the function call.

My thoughts:

I'm not sure this is a good idea from a practical usability standpoint.  We have several planners that fundamentally can't do anything useful with more than one goal, and it seems less understandable for them to implement PlanToConfigurations then immediately fail when given multiple goals.

It seems easy enough to stub PlanToConfiguration as a placeholder call to PlanToConfigurations with a single goal.

It seems like this might also make client code less readable or more error prone, as simple planning from a point to another point would now either involve a superfluous array construction or a potentially incorrect inference of whether single or multiple goals were provided.

I agree with @psigen. I don't think the downsides are worth it because it's only ~two lines of code to add a PlanToConfiguration stub that calls PlanToConfigurations.

For what its worth, I agree with pras and mike, especially from a code readability/clarity standpoint. In cbirrt ( https://github.com/personalrobotics/prpy/blob/master/src/prpy/planning/cbirrt.py) I had to actually create a third function that was not a PlannignMethod that both PlanToConfiguration and PlanToConfigurations called. Otherwise, I believe calling PlanToConfigurations from PlanToConfiguration sent you incorrectly back through the planning pipeline. Does this seem like an ok/correct way to handle implement this?

Unfortunately, we do need the extra method. There are currently some issues with calling a @PlanningMethod from another @PlanningMethod on the same class. I believe the root issue is that it tries to clone the environment into itself.
It should be relatively easy to fix this, though.

Ok fine :).
Should we be throwing an exception if someone sends a list of goals to PlanToConfiguration then?
Perhaps this is a separate issue. Where should input error checking go?

This is a good point. Its seems there are two options:

We don't explicitly worry about input argument validity in the python wrapper side. We rely on the actual underlying planners themselves to do validity checking and throw exceptions accordingly.

We explicitly check input arguments on the python wrapper side, and then throw exceptions if they are bad. This will causes the planning pipeline to properly move onto the next planner, or fail back up to the calling code.

Thoughts?

I think it makes sense to check for obvious incorrect argument
specifications up front, so that we can be consistent about them.  This is
basic stuff such as:

The goal is the correct (duck) type and expected size
Quick assertions that any necessary robot properties are valid/exist
(For example, does robot.planner.PlanToConfiguration exist if we are using
PlanToIK, which calls it).

This would be useful to catch major errors faster (before any planning
starts) and more consistently.
If we only depend on the error checking of the planners, we are basically
biasing towards spending time in implementations with the worst error
checking, as they are more likely to return broken solutions or waste time
instead of failing.  Also, their C++ exceptions are going to be much harder
to read and trace.
This is one of those situations where having formal interfaces in the
Python language would have been really helpful.
On Wed, Jan 7, 2015 at 10:35 AM, Jennifer King<EMAIL_ADDRESS>wrote:

This is a good point. Its seems there are two options:

We don't explicitly worry about input argument validity in the python
wrapper side. We rely on the actual underlying planners themselves to do
validity checking and throw exceptions accordingly.
2.
We explicitly check input arguments on the python wrapper side, and
then throw exceptions if they are bad. This will causes the planning
pipeline to properly move onto the next planner, or fail back up to the
calling code.
Thoughts?
—
Reply to this email directly or view it on GitHub
https://github.com/personalrobotics/prpy/issues/30#issuecomment-69038564
.

I would prefer to do as much of the error checking in C++ as possible. People who use our planners without the PrPy wrapper should still get reasonable error messages. Environment cloning happens before you enter the planning method, so there isn't much of a performance difference.
I agree with @psigen for legacy planners that we inherited (e.g. CBiRRT) that don't have very robust error checking internally.
In any case, I am closing the issue because we've gone pretty far off topic. It might be better to have this discussion in person or on Slack.


sanitycheck: Discard bsim boards if BabbleSim is not found

If BabbleSim is not found, discard tests on the nrf52_bsim board
as they would not compile or run.
Signed-off-by: Alberto Escolar Piedras<EMAIL_ADDRESS>

@nashif : I think I'm not versed enough on sanitycheck internals to know what do you mean with "what we do with toolchains"

Codecov Report

Merging #10691 into master will decrease coverage by 0.13%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #10691      +/-   ##
==========================================
- Coverage   53.24%   53.11%   -0.14%
==========================================
  Files         214      214
  Lines       25828    25828
  Branches     5695     5695
==========================================
- Hits        13753    13719      -34
- Misses       9760     9800      +40
+ Partials     2315     2309       -6

Impacted Files
Coverage Δ

include/posix/posix_sched.h
0% <0%> (-100%)
:arrow_down:

lib/posix/pthread_barrier.c
0% <0%> (-100%)
:arrow_down:

lib/posix/pthread_cond.c
62.5% <0%> (-20.84%)
:arrow_down:

lib/posix/pthread.c
68.03% <0%> (-12.33%)
:arrow_down:

lib/posix/pthread_mutex.c
76.38% <0%> (-1.39%)
:arrow_down:

subsys/logging/log_output.c
85.45% <0%> (+1.21%)
:arrow_up:

subsys/logging/log_core.c
78.4% <0%> (+2.34%)
:arrow_up:

lib/posix/pthread_sched.c
62.5% <0%> (+20.83%)
:arrow_up:

Continue to review full report at Codecov.

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

@aescolar  see #10695


[FixBug] Error converting value "" to Int64

Solve the following problems
When property type is int32, The following code OK
    public class Program
    {
        public class TestModel
        {
            public int from { get; set; }
        }

        public static void Main(string[] args)
        {
            var json = "{ \"from\": \"\"}";
            var ss = JsonConvert.DeserializeObject<TestModel>(json, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore });
            Console.WriteLine(ss);
        }
    }

When property type is int64, The following code throw exception
    public class Program
    {
        public class TestModel
        {
            public long from { get; set; }
        }

        public static void Main(string[] args)
        {
            var json = "{ \"from\": \"\"}";
            var ss = JsonConvert.DeserializeObject<TestModel>(json, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore });
            Console.WriteLine(ss);
        }
    }

set NullValueHandling = NullValueHandling.Ignore they not have the same effect

I'm experencing the same issue, Deserialization works fine for properties of type int, decimal, or string, but it throws an exception for properties of type long. The library version is '13.0.3', and the exception is as follows:
CLR/Newtonsoft.Json.JsonSerializationException
An exception of type 'Newtonsoft.Json.JsonSerializationException' occurred in Newtonsoft.Json.dll but was not handled in user code: 'Error converting value "" to type 'System.Int64'.


trufflehog: 3.25.3 -> 3.25.4

Changelog: https://github.com/trufflesecurity/trufflehog/releases/tag/v3.25.4
Description of changes

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 212837 run on x86_64-linux 1

1 package built:

trufflehog


[Feature-10562][Task Plugin] Add local env and global env priority support

Purpose of the pull request

Load environment config and env file at the same time.
The priority of the environment config is higher than the priority of the env file. When an environment variable does not exist in the environment config, it will be supplemented by the env file (if it exists).
The environment config can also overwrite/get the environment variables existing in the env file.

This close #10562
Brief change log

Add local env and global env priority support.
Verify this pull request
Manually verified the change by testing locally.

Codecov Report

Merging #11334 (225fd1d) into dev (3aa9f2e) will decrease coverage by 0.02%.
The diff coverage is 0.00%.

@@             Coverage Diff              @@
##                dev   #11334      +/-   ##
============================================
- Coverage     40.26%   40.24%   -0.03%
+ Complexity     4843     4839       -4
============================================
  Files           974      974
  Lines         37323    37315       -8
  Branches       4142     4133       -9
============================================
- Hits          15029    15016      -13
- Misses        20748    20751       +3
- Partials       1546     1548       +2

Impacted Files
Coverage Δ

...cheduler/plugin/task/api/ShellCommandExecutor.java
0.00% <0.00%> (ø)

...erver/master/processor/queue/TaskEventService.java
69.64% <0.00%> (-10.72%)
:arrow_down:

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
:arrow_down:

...e/dolphinscheduler/remote/NettyRemotingClient.java
50.00% <0.00%> (-2.78%)
:arrow_down:

...r/plugin/task/sqoop/parameter/SqoopParameters.java
55.12% <0.00%> (-1.29%)
:arrow_down:

...rver/master/runner/task/BlockingTaskProcessor.java
75.60% <0.00%> (-0.30%)
:arrow_down:

...eduler/api/service/impl/DataSourceServiceImpl.java
28.47% <0.00%> (ø)

.../dolphinscheduler/plugin/task/datax/DataxTask.java
0.00% <0.00%> (ø)

...phinscheduler/plugin/task/chunjun/ChunJunTask.java
0.00% <0.00%> (ø)

... and 3 more

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more

Hi @caishunfeng @SbloodyS @zhuangchong. This PR is ready, PTAL

Without Environment Config

Load both dolphinscheduler_env.sh and Environment Config
The above picture is the log screenshot of my local test.
The dolphinscheduler_env.sh is always loaded as a global . If the Environment config is exists, the Environment config is loaded as a local variable. Environment Config always can gets/overrides configuration in dolphinscheduer_env.sh.
Isn't this the expected effect of #10562? @SbloodyS @zhongjiajie


Terraform State error on DeployTRE Run (github actions)

Remember to label the issue with the appropriate area, and also assign it to yourself if you plan to work on the issue in the near future.
Describe the bug
While running the github action "Deploy TRE" I repeatedly encounter the same issue that the Keyvault and Service Bus resources already exist and are not part of State (see Log Output below)
Steps to reproduce

Setup Auth (make auth)
Start Deploy TRE from gitHub actions (will fail)
a.  set ACR name and Password in GitHub Secrets
Re-run Deploy TRE (will fail with error below)

Log output
Changes to Outputs:

azure_tre_fqdn = (known after apply)
azurerm_key_vault_access_policy.deployer: Creating...
azurerm_monitor_diagnostic_setting.kv: Creating...
azurerm_monitor_diagnostic_setting.sb: Creating...
╷
│ Error: A resource with the ID "/subscriptions//resourceGroups/rg-/providers/Microsoft.KeyVault/vaults/kv-/objectId/51553684-578d-47d4-bed0-d6effee724f9" already exists - to be managed via Terraform this resource needs to be imported into the State. Please see the resource documentation for "azurerm_key_vault_access_policy" for more information.
│
│   with azurerm_key_vault_access_policy.deployer,
│   on keyvault.tf line 13, in resource "azurerm_key_vault_access_policy" "deployer":
│   13: resource "azurerm_key_vault_access_policy" "deployer" {
│
╵
╷
│ Error: A resource with the ID "/subscriptions//resourcegroups/rg-/providers/microsoft.keyvault/vaults/kv-/providers/microsoft.insights/diagnosticSettings/diagnostics-kv-" already exists - to be managed via Terraform this resource needs to be imported into the State. Please see the resource documentation for "azurerm_monitor_diagnostic_setting" for more information.
│
│   with azurerm_monitor_diagnostic_setting.kv,
│   on keyvault.tf line 110, in resource "azurerm_monitor_diagnostic_setting" "kv":
│  110: resource "azurerm_monitor_diagnostic_setting" "kv" {
│
╵
╷
│ Error: A resource with the ID "/subscriptions//resourcegroups/rg-/providers/microsoft.servicebus/namespaces/sb-/providers/microsoft.insights/diagnosticSettings/diagnostics-sb-***" already exists - to be managed via Terraform this resource needs to be imported into the State. Please see the resource documentation for "azurerm_monitor_diagnostic_setting" for more information.
│
│   with azurerm_monitor_diagnostic_setting.sb,
│   on servicebus.tf line 94, in resource "azurerm_monitor_diagnostic_setting" "sb":
│   94: resource "azurerm_monitor_diagnostic_setting" "sb" {
│
╵
Script done, file is<PHONE_NUMBER>-tre-core.log
Terraform Error
make: *** [Makefile:108: deploy-core] Error 1

Hi @daemel ,
This looks like a deployment was done with a specific TRE_ID, and then maybe the TF state file recreated?
The items mentioned either need deleting or importing into state or the TRE ID needs to be changed so a new state and resources are created.
If these are the only resources that already exist I'd likely go the deletion route and then run the pipeline again.
Let me know if can help.

As was mentioned above, this looks like a run that tries to reuse the same TRE_ID while another environment is still online with the same TRE_ID.
If you can provide exact reproduce steps, please reopen this issue.

This was on an initial deployment, no TRE ID was in existence

The Terraform errors suggests otherwise as it complains that the resource it is about to create already exists on Azure.


403 Forbidden when logging in from Webkit browsers (Chrome, Opera)

We recently upgraded to TeamCity 2017.1.1, and when users try to use the AD to login they get a message stating:
403 Forbidden: Respnding with 403 status code due to failed CSRF check: request's "Origin" header value "https://login.microsoftonline.com" does not maqtch Host/X-Forwarded-Host header values or server's CORS-trusted hosts, consider adding "Origin: https://myteamcityurl.com" header.
I can't see a place from the plug-in configuration to add this header and it worked in TC 10.0.5 perfectly fine.

Just for clarification so anyone else is clear on the workaround (I believe it's a workaround and not the fix) for this, this is because TeamCity 2017.1.1 adds a CSRF Protection feature which checks origins of requests to their REST API (and other endpoints).
This is where the feature's page is: https://confluence.jetbrains.com/display/TCD10/CSRF+Protection
By reading: https://confluence.jetbrains.com/display/TCD10/REST+API#RESTAPI-CORSSupport I found out that I need to add https://login.microsoftonline.com to the cors list in the internal properties.
These can be edited in the UI as described here: https://confluence.jetbrains.com/display/TCD10/Configuring+TeamCity+Server+Startup+Properties#ConfiguringTeamCityServerStartupProperties-TeamCityinternalproperties

Lifesaver ^
I added this as shown below:
rest.cors.origins=https://login.microsoftonline.com

This is hopefully patched in 2017.1.2 as described here: https://youtrack.jetbrains.com/issue/TW-49729

I had a nearly identical problem, Azure was sending "Origin: null"  (literally 'null') and got the same error but
403 Forbidden: Respnding with 403 status code due to failed CSRF check: request's "Origin" header value "null" does not maqtch Host/X-Forwarded-Host header values or server's CORS-trusted hosts,
The first suggestion didnt work, on a wile whim I took a stab and guessed "originS" meant more then one, and guessed comma seperated .
rest.cors.origins=null,https://login.microsoftonline.com
Bingo
Worked !

Modern browsers could set Origin: null header while replying from HTTPS Azure endpoint to the HTTP URL of TeamCity server. See more details at the https://github.com/JetBrains/teamcity-azure-active-directory#known-issues
Please let me know if you are using TeamCity 2017.1.2+ with HTTPS URL and still need to specify rest.cors.origins=null property in your setup.


WIP Bootstrap

This change is

r? @vinipsmaker
(maidsafe_highfive has picked a reviewer for you, use r? to override)


Select and delete in groups

Tell us about the task you want to perform and are unable to do so because the feature is not available
There should be a selection button  or the user is able to drag and select so that user can select and delete the unwanted collections,files or folders in groups rather than selecting and deleting them one by one.

Closing this issue as it has low utility. A much useful feature will be to delete a request when the delete keyboard button is pressed.


Release - Errata Blog 19_12_09, Build - 191205.02.01

Docs Build status updates of commit cae76d6:
:warning: Validation status: warnings

File
Status
Preview URL
Details

documentation/blog/MS-WININTBLOGLP/19856d3a-561b-4c48-85bc-198961957d57.md
:warning:Warning

Details

documentation/blog/MS-WININTBLOGLP/5cfec726-c7bd-4301-9390-247b42e303cd.md
:warning:Warning

Details

documentation/blog/MS-WININTBLOGLP/6183f838-c21e-4c44-a5bb-1a84e1864c2e.md
:warning:Warning

Details

documentation/blog/MS-WININTBLOGLP/6344e692-0783-4f0a-bb97-5a07b9167286.md
:warning:Warning

Details

documentation/blog/MS-WININTBLOGLP/ae5965ad-0b09-4cd3-b547-42eddc9487d9.md
:warning:Warning

Details

documentation/blog/MS-WININTBLOGLP/dd98b93c-0a75-4eb0-b92e-e760c502394f.md
:warning:Warning

Details

documentation/blog/MS-WININTBLOGLP/MS-WININTBLOGLP_files/image002.png
:white_check_mark:Succeeded

documentation/blog/MS-WININTBLOGLP/MS-WININTBLOGLP_files/image005.png
:white_check_mark:Succeeded

documentation/blog/MS-WININTBLOGLP/MS-WININTBLOGLP_files/image006.png
:white_check_mark:Succeeded

documentation/blog/MS-WININTBLOGLP/MS-WININTBLOGLP_files/image008.png
:white_check_mark:Succeeded

documentation/blog/MS-WININTBLOGLP/MS-WININTBLOGLP_files/image009.png
:white_check_mark:Succeeded

documentation/blog/MS-WININTBLOGLP/MS-WININTBLOGLP_files/image010.png
:white_check_mark:Succeeded

documentation/blog/MS-WININTBLOGLP/MS-WININTBLOGLP_files/image014.png
:white_check_mark:Succeeded

documentation/blog/MS-WININTBLOGLP/toc.yml
:white_check_mark:Succeeded

documentation/blog/MS-WININTBLOGLP/19856d3a-561b-4c48-85bc-198961957d57.md

[Warning] Author openspecs-office cannot be recognized in GitHub.

documentation/blog/MS-WININTBLOGLP/5cfec726-c7bd-4301-9390-247b42e303cd.md

[Warning] Author openspecs-office cannot be recognized in GitHub.

documentation/blog/MS-WININTBLOGLP/6183f838-c21e-4c44-a5bb-1a84e1864c2e.md

[Warning] Author openspecs-office cannot be recognized in GitHub.

documentation/blog/MS-WININTBLOGLP/6344e692-0783-4f0a-bb97-5a07b9167286.md

[Warning] Author openspecs-office cannot be recognized in GitHub.

documentation/blog/MS-WININTBLOGLP/ae5965ad-0b09-4cd3-b547-42eddc9487d9.md

[Warning] Author openspecs-office cannot be recognized in GitHub.

documentation/blog/MS-WININTBLOGLP/dd98b93c-0a75-4eb0-b92e-e760c502394f.md

[Warning] Author openspecs-office cannot be recognized in GitHub.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


respect default entity values

See #237

@taylorfinnell why not checking for the presence of the key instead of checking for a trueish value?
The question i'd ask is "has there been a default assigned" not "is there a default which is true".
Same problem as with assigning the the defaults, actually.
if properties[:ruby_default] || properties[:db_type] == 'boolean'

=>
if properties.key?(:ruby_default)

@taylorfinnell Thanks for starting this.
I think this should honor the mapper first and then the database schema defaults. As of v0.5.0, we'll have custom coercers (see #216). That means, a dev can setup their own serialize/deserialize policy for an attribute. I'll give you one silly example to explain the concept.
Let's say we have a price column expressed as an integer with cents, so 1€ is stored as 100. In the Ruby world, the dev wants a float for that attribute, so 1€ is 1.00. Here's the corresponding code.
# migration
column :price, Integer, default: 100

class Price
  def self.dump(value)
    Integer(value) unless value.nil?
  end

  def self.load(value)
    Float(value) unless value.nil?
  end
end

# mapper
attribute :price, Price

Now, with this current implementation, we have a problem:
book = Book.new
book = BookRepository.create(book)
book.price # => 100 WRONG

We wanted a float, but we have an integer. To solve this issue, we should use #deserialize_attribute.
/cc @lotus/core-team @pascalbetz

@taylorfinnell ping

Oops! Was not getting notifications for this, will work on it this week! Thanks guys

Is there an ETA for this fix? right now I'm doing this:
foo = FooRepository.create(foo)
foo = FooRepository.find(foo.id)  # <= Shouldn't need to do this

I need it to get default Sequel.function(:uuid_generate_v4) value

Guys, any news about it?

@hlegius Nobody's working on it at the moment.

ping

@taylorfinnell posted a question on gitter:
@jodosha Do you have any tips on how to handle the issue mentioned in the first comment here. taylorfinnell/model@0759f90. Working on #237 (lotus/model#239) and have have started to use the deserialize_attribute like you mention but I am not sure how to tell if the user has set their value to nil or if the value is nil and because no value was set and it needs a default

It looks like attributes that are set to nil don't make it to #create.
Fake migration...
  create_table :users do
     column :name, String, default: "Jim"
end

u = TestUser.new(name: nil)
UserRepo.create(u)

In Sql::Collection#insert the serialized_entity at that point only contains id and no name. So I think it would seem reasonable to set the defaults at that point like in the commit @pascalbetz mentioned above

@taylorfinnell I'm closing this in favor of a new implementation that I'm working on. Thanks!


feat: enable guardrail disallowing creation of access keys for the root

Summary | Résumé
This enables this guardrail: https://docs.aws.amazon.com/controltower/latest/userguide/strongly-recommended-controls.html#disallow-root-access-keys
Which will close the following issue: https://github.com/cds-snc/security-risk-register/issues/13
I validated in Security hub that no current accounts have access keys.

Looks good to me!
Also, it didn't like your last SCP https://github.com/cds-snc/cds-aws-lz/actions/runs/4128133026/jobs/7132204405#step:5:231

But you reviewed it for me and gave me an approval, I blame you for this one.


Can not boot from OC

PLEASE READ THE FOLLOWING

Make sure you installed the latest version of HaC Mini
Follow all the troubleshooting steps
Check the open issues and make sure it is not already reported
Delete this section from your report and continue

Describe the bug
A clear and concise description of what the bug is.
Install OC2.1, reset NVRAM, and after reboot, the display is black and can see boot logo.
Expected behavior
A clear and concise description of what you expected to happen.
Should be boot success.
Configuration

HaC Mini version [e.g: 2.0]: 2.1
OSX version [e.g: 10.14.6]: 10.14.5
NUC model [e.g: NUC8i7HNK]: NUC8i7HVK
Boot SSD model and protocol [e.g: Samsung EVO 860 1TB, SATA]: SM961 512GB
Second SSD model and protocol (if installed) [e.g: HP EX920 1TB, NVMe]: SM961 512GB
First DIMM model [e.g: Patriot DDR4-2666 16GB]: DDR4-2666 16GB
Second DIMM model (if installed):
Display port(s) used [e.g: USB-C, mini DP]:  hdmi
Display resolution(s) [e.g: 4K, 5K]: dell u2718q 4k
Any TB3 devices:
Any USB devices:

Modifications
List any mods to config.plist, any additional kexts, anything installed to /Library/Extensions and /System/Library/Extensions, any additional patches, etc. Please attach your config.plist if you made any modifications.
Panic log
Include a screenshot of the panic message if applicable.

Try manually picking boot https://osy.gitbook.io/hac-mini-guide/post-installation/support#getting-into-boot-picker-menu

Closing due to lack of activity. Boot picker should workaround the issue. I think this is a duplicate of #56


[BUG] Error running flow: '<' not supported between instances of 'int' and 'str'

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

Upvote & Fund

We're using Polar.sh so you can upvote and help fund this issue.
We receive the funding once the issue is completed & confirmed by you.
Thank you in advance for helping prioritize & fund our backlog.

@elder-plinius give more descriptive tracebacks


undefined method `per'

I have problem with this error on Rails 4.2
I fix this error in file lib/smart_listing.rb on row 95 and row 106 with change per to per_page
95       @collection = ::Kaminari.paginate_array(@collection).page(@page).per(@per_page)
...
106     @collection = @collection.page(@page).per(@per_page)
request to developer: please fix this error. Rails 4.2 Active record not have method per

This appears to be an issue still at this time (with Rails 5.2 here at least). Should it be open?
The solution you suggest seems to work. Here is a PR, for it.


KML stop working in Andriod 10

Hello There
I have upgrade my IONIC application from cordova android 9 to cordova android 10.1.1 .
In Version 9 the KML load properly in google map from my local device,but After upgrade to 10.1.1 KML stop working from my local devices
can anyone help me please

I'm facing this issue now.
I noticed if I open the KML manually and delete all the

@rodrigosoareschaves have you load it from online url or from  assets?

I'm loading it from URL and before apply the addKMLOverlay the app is downloading the KML to load it locally (that allows offline usage).
I tried inspect this part of the plugin in Java code. I think the error is related to some permission on Android, because testing on old Android versions it works fine, even with styles.


Destination with passwordless keystore not loaded correctly

Hi colleagues,
We are using the destination service on BTP CF and we have setup the following destination from the BTP Cockpit Destination Editor:
Type: HTTP
URL: https://example.com
Proxy Type: Internet
Authentication: ClientCertificateAuthentication
Key Store Location: keystore.p12
Key Store Password: <EMPTY>

We have observed that when the key store password is empty, the Cloud SDK HttpClient is not loaded with the whole key store correctly from the destination and the request fails afterwards. When the keystore has a password, everything works.
This is the code:
    final HttpDestination httpDestination = DestinationAccessor.getDestination(DESTINATION).asHttp();
    HttpClient client = HttpClientAccessor.getHttpClient(httpDestination);
    HttpPost httpPost = new HttpPost();
    httpPost.addHeader("Content-Type", ContentType.APPLICATION_JSON.getMimeType());

    StringEntity body = new StringEntity(mapper.writeValueAsString(payload), ContentType.APPLICATION_JSON);
    httpPost.setEntity(body);
    client.execute(httpPost);

We are using Cloud SDK, version 4.22.
Regards,
Momchil

Hello @m-ignatov,
We are investigating this issue.

Hello @m-ignatov,

We have observed that when the key store password is empty, the Cloud SDK HttpClient is not loaded with the whole key store correctly from the destination and the request fails afterwards. When the keystore has a password, everything works.

Obvious question, did you use the same keystore for facilitating the test?
I mean would the keystore anyway require a password?

Did you facilitate the test with or without restarting the application?
SAP Cloud SDK may still have cached the old destination configuration.

You are saying the following is your use case, right?

In Destination Service have a destination with keystore, correctly without password.
SAP Cloud SDK loads the destination just fine.
SAP Cloud SDK fails to use the keystore upon HTTP request execution.

If true, could you please let us know what is returned here at runtime :
destination.get(DestinationProperty.KEY_STORE_LOCATION);
destination.get(DestinationProperty.KEY_STORE_PASSWORD);

Kind regards
Alexander

Hi @newtork ,
For the testing, I used one keystore with password and another keystore without a password.
The one without the password is problematic.
During runtime, the KEY_STORE_LOCAITON is correct and the KEY_STORE_PASSWORD is an empty string,  as expected.
I restarted the application so caching wouldn't be an issue.
And yes, the HTTP request execution fails.
Regards,
Momchil

Hi Momchil,
I'm currently trying to understand what happens with the keystore that we create from the properties you mentioned above.
Can you verify, that you can access the private key in the keystore as expected? So e.g. via something like:
KeyStore ks = destination.getKeyStore().get();
ks.getKey(destination.get(DestinationProperty.KEY_STORE_LOCATION).get(), destination.get(DestinationProperty.KEY_STORE_PASSWORD).get().toCharArray());

My feeling right now is, that the following line of code is causing the problem: https://github.wdf.sap.corp/MA/sdk/blob/main/v4/cloudplatform/cloudplatform-connectivity-dwc/src/main/java/com/sap/cloud/sdk/cloudplatform/connectivity/DestinationKeyStoreExtractor.java#L243
But I would like to verify that it is already failing at the code above, or whether it's somewhere later in the consumption of the keystore by other libraries.
Greetings
Chris

Hi Christoph,
This line returns null when I execute it:
ks.getKey(destination.get(DestinationProperty.KEY_STORE_LOCATION).get(), destination.get(DestinationProperty.KEY_STORE_PASSWORD).get().toCharArray());

Regards,
Momchil

Hi @m-ignatov,
thanks for the response.
Then it looks like the line of code linked above is causing the problem.
We will investigate a bit further and try to fix the issue.
Would you be fine in testing a milestone release in between? That way we can make sure that our changes actually fix your issue.
Greetings
Chris

Sounds good - I will be happy to test it.
Thanks for the support!
Regards,
Momchil

Hi @m-ignatov,
okay, I'm currently stumbling over a problem when trying to prepare a test for this:
I cannot create a p12 file is not (at least in part) protected by a secret.
What I was able to create is one that accepts an empty "Import" password, but later on requires a PEM pass phrase.
See the following sample:
> openssl pkcs12 -in unprotected.p12 -info

Enter Import Password:
MAC: sha256, Iteration 2048
MAC length: 32, salt length: 8
PKCS7 Encrypted data: PBES2, PBKDF2, AES-256-CBC, Iteration 2048, PRF hmacWithSHA256
Certificate bag
Bag Attributes
    localKeyID: E1 66 A5 39 0E 5A 69 3A 19 C9 11 4E 58 8A 92 02 28 21 2B 93
subject=C = CA, ST = State, L = City, O = Company, OU = Department, CN = Developer
issuer=C = CA, ST = State, L = City, O = Company, OU = Department, CN = Developer
-----BEGIN CERTIFICATE-----
MIIFcjCCA1qgAwIBAgIJAOSyj0+DnwQcMA0GCSqGSIb3DQEBDAUAMGcxCzAJBgNV
...
YyHZFFgy
-----END CERTIFICATE-----
PKCS7 Data
Shrouded Keybag: PBES2, PBKDF2, AES-256-CBC, Iteration 2048, PRF hmacWithSHA256
Bag Attributes
    localKeyID: E1 66 A5 39 0E 5A 69 3A 19 C9 11 4E 58 8A 92 02 28 21 2B 93
Key Attributes: <No Attributes>
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIJrTBXBgkqhkiG9w0BBQ0wSjApBgkqhkiG9w0BBQwwHAQINIgmu+oPa68CAggA
...
SzIfdJ7Q55yROC3MdfepGE1SGb7wQ3GwwvgtDC4pTvBC
-----END ENCRYPTED PRIVATE KEY-----

This seems to cause issues in the java code (different import password and PEM pass phrase).
Could you please verify this command here with your p12 file to see whether there is a PEM pass phrase required? openssl pkcs12 -in <your-file>.p12 -info
Greetings
Chris

Hi,
This would be always the cause with openssl because it does not want to print the private key in clear text, thus encrypting it with the PEM passphrase you give it. This does not mean the P12 has another password. The same behaviour is for me.
If you don't want openssl to do this, try exporting it to .pem:
openssl pkcs12 -nodes -in unprotected.p12 -out unprotected.pem
Regards,
Momchil

Fair, but how do you get it into a .p12 again (like the one you use in the destination service)? Whenever I convert the .pem to .p12 it requires a pass phrase for the key again (even though I don't provide any.

I am not sure I understand you.
The keystore generated from the destination service also has the same behaviour.

I set up a meeting for Monday to talk about this.

Okay, quick learning from our call today:
As Momchil described above, openssl pkcs12 -in unprotected.p12 -info always expects a string as the PEM pass phrase, even if there is none. That means, for an passwordless file, if you enter a string that is at least 4 characters long it will show the key.

Hi @m-ignatov,
I was now trying to reproduce the issue with the information taken from yesterdays call.
However, I don't seem to be able to come to the same issue as described in the original post (I can access the keystore we read with the empty String or null as a password).
That's why I wanted to ask you whether you could provide us the passwordless p12 file you were using that caused the issue in the first place for you.
Of course, if that is sensitive, please create a seperate p12 file that you are able to share with us.
Best to send it internally via e.g. Sharepoint and/or email.
Greetings
Chris

Hi @m-ignatov ,
As @cschubertcs mentioned, it would be very helpful if you can provide a p12 file.
On the other hand, is it possible to switch to a keystone with a password as you mentioned below?

When the keystore has a password, everything works.

Best regards,
Junjie

Just to add the current status communicated via Teams:

I received a passwordless keystore file by @m-ignatov
This reacts the same as the passwordless file I created
Even using plain Apache HttpClient code I can see that the SSLContextBuilder is not reading the passwordless file correctly

Therefore, my current assumption is that this is not supported by Apache HttpClient (or a bug in there).
@m-ignatov If you could provide some sample code that is able to read this passwordless keystore I could compare this against what we are doing in the SDK to find differences. Right now I cannot get it to run even without the SDK.

On the other hand, is it possible to switch to a keystone with a password as you mentioned below?

This, of course, would be a workaround for the moment, as it seems to cause no problems.

We fixed the empty-password handling for PKCS#12 key-stores for outbound HttpClient requests.
Please recheck with SAP Cloud SDK 5.4.0, after it's released by end of the week.

Closing this optimistically, assuming the fix works as intended. If not, please comment/re-open.


embedFile(): use same file resolving method as require()

The compiler uses the LUA_PATH for resolving filenames for the require() command.
However, the embedFile() only seems to try to find the file in the same directory where called from.
It would be helpful and consistent if embedFile would use the same filename resolving mechanism as e.g. renderscripts could be located in their own location.
Looked in the source for it:
In src/compiler_functions.ts -> export default class LibraryEmbedFileFunction -> invoke
should equally use "getRequiredFileInfo()" method (in DULuaCompiler.ts)

Fixed in 2ad91041f23158f1316dd20ec7f123db2df4618e


make compatible with joi 17

this change breaks some tests. Please update the test accordingly as well. Also, it looks like upgrading to Joi v14 will be a breaking change (it's not a problem just note to myself)

Closing. Fixed with #573


Appstudio update test-component-pac-fmmd

Pipelines as Code configuration proposal

Pipelines as Code CI/test-component-pac-fmmd-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
5 seconds
init

✅ Succeeded
15 seconds
clone-repository

✅ Succeeded
1 minute
build-container

✅ Succeeded
21 seconds
deprecated-base-image-check

✅ Succeeded
50 seconds
clamav-scan

✅ Succeeded
3 minutes
clair-scan

✅ Succeeded
20 seconds
sanity-inspect-image

✅ Succeeded
27 seconds
sbom-json-check

✅ Succeeded
18 seconds
sanity-label-check

✅ Succeeded
17 seconds
sanity-optional-label-check

✅ Succeeded
6 seconds
show-summary

Pipelines as Code CI/test-component-pac-fmmd-on-pull-request has successfully validated your commit.

StatusDurationName

✅ Succeeded
5 seconds
init

✅ Succeeded
19 seconds
clone-repository

✅ Succeeded
32 seconds
build-container

✅ Succeeded
10 seconds
clair-scan

✅ Succeeded
12 seconds
deprecated-base-image-check

✅ Succeeded
10 seconds
sanity-inspect-image

✅ Succeeded
34 seconds
clamav-scan

✅ Succeeded
5 seconds
sbom-json-check

✅ Succeeded
6 seconds
sanity-optional-label-check

✅ Succeeded
6 seconds
sanity-label-check

✅ Succeeded
4 seconds
show-summary


Synchronous XHR request through zonejs results in:  More tasks executed then were scheduled

I am logging a bug report:
There seems to be a bug in the bookkeeping of XMLHttpRequest in zone.js.
If I  trigger a synchronous XMLHttpRequest when zonejs is loaded on the page I get the following error:
Error: More tasks executed then were scheduled.
The error does not occur if the request is asynchronous.
Here is a simple plunker with a repro: https://plnkr.co/edit/7Cn3JknfDIIHMIdqcuo0?p=preview
I have not looked into this extensively, but the error occurs here:
next is set to -1 which triggers the error condition.
ZoneDelegate.prototype._updateTaskCount = function (type, count) {
	            var counts = this._taskCounts;
	            var prev = counts[type];
	            var next = counts[type] = prev + count;
	            if (next < 0) {
	                throw new Error('More tasks executed then were scheduled.');
	            }
	            if (prev == 0 || next == 0) {
	                var isEmpty = {
	                    microTask: counts.microTask > 0,
	                    macroTask: counts.macroTask > 0,
	                    eventTask: counts.eventTask > 0,
	                    change: type
	                };
	                try {
	                    this.hasTask(this.zone, isEmpty);
	                }
	                finally {
	                    if (this._parentDelegate) {
	                        this._parentDelegate._updateTaskCount(type, count);
	                    }
	                }
	            }
	        };

I agree that sync xhr requests are discouraged, but I think a warning is more appropriate than an error in this scenario.

Having the same issue specifically when trying to use a Marketo lead-tracking plugin. Granted, the requests the plugin perform should really be async but throwing an error and essentially breaking change detection seems a bit much.
https://github.com/NewsWhip/NewsWhip/issues/8022

https://github.com/angular/zone.js/issues/287#issuecomment-235011681

The awesome karma-source-map-support needs to do synchronous xhr requests to make the property Error.prototype.stack behave nice, because a getter is always synchronous. Zonejs should neither warn or fail about that. Synchronous request is a public and acceptable use of XMLHttpRequest and zonejs should respect that.  It should really be transparent. This is a bug and I suppose it could be easily fixed for those who are already familiar with the zonejs source code.


Attach

Attaching doesn't feel like a cluster management operation. Additionally, since agents connect to managers rather than the other way around, it wouldn't work seamlessly.
What if instead we provided an ssh service out of band from the cluster API to allow attach (debugging) operations?
It could either be:

Distributed, on the engine itself or in the agent. At that point, attaching would result into sshing into the node's IP at our SSH port
Centralized, on the manager. The manager would then need to communicate with the node in a way or another
Both: It's distributed, but ssh'ing into the manager forwards the connection into the node ssh endpoint

Closing in favor of duplicate #1896.


Add support for for_netcon

Tackles issue #390
For_netcon applies the operations of the block to the weights of
all the netcons. Since all the weights are on the same vector,
weights, this means appling the same operations to a mask of values
with the appropriate offset. The mask is the arguments of the
for_netcon block.
Note: the local variables are renamed to the correct position
in the corenrn vectors (no new variables added). Some of these
local variables may have been already substituted with special
characters that break rename_visitor (i.e. (*w) ). Thus, we need
to sanitize first the regex names that we are going to substitute.

Tested with the test in /nrn/test/coreneuron/test_fornetcon.py
for SoA

TODO: Test for AoS
TODO: Add test to a CI

please retest


Support actor object via annotation metadata

Issue
Part of #216
(https://github.com/uber/mockolo/issues/216#issuecomment-1454179318 's "1.")
Description
Add an annotation "object: class/actor" for specifying the object nominal types of the mock.
This allows the user to choose, at his/her own risk, whether to generate the mock for the protocol as a class or as an actor.
For details: https://github.com/uber/mockolo/issues/216#issuecomment-1454179318

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Same: https://github.com/uber/mockolo/pull/222#issuecomment-2434112595


Integrating Ramulator2 in MGPU-SIM

We were trying to integrate Ramulator2 in MGPU-SIM. We are unable to locate the  LLC miss (a request which is going to DRAM). Could you please help us to understand the flow or give the path to the file from which we will get the information regarding DRAM access.

If the Akita's DRAM model is used, here is where we receive transactions. https://github.com/sarchlab/akita/blob/v3/mem/dram/memcontroller.go#L74.
If the ideal memory controller is used, here is the place.
https://github.com/sarchlab/akita/blob/v3/mem/idealmemcontroller/comp.go#L84
Could you let us know how you integrate Ramulator2. Do you export traces from MGPUSim and feed into Ramulator 2?

Hi,
Thanks for the info. Yes, we will collect the traces from MGPUSim and feed them into Ramulator2.

Sure. Thank you for letting us know. Please let us know if you have more questions. We will close this issue, but please feel free to reopen if needed.


RLMSyncAuthErrorBadResponse occurring frequently

Goals
Properly authenticate users including handling all types of sync auth errors.
We are trying to diagnose some authentication errors in our app. By far the most frequent sync error being caught in our client logs is RLMSyncAuthErrorBadResponse, which is described in the API as

An error that indicates that the response received from the authentication server was malformed.

Do you have information on the Realm Cloud side of things that could explain specifically what would cause this error? And on the client side how should this type of error be handled? The documentation and sample code here doesn't seem to cover this case.
Version of Realm and Tooling
Realm framework version: 4.3.2
Realm Object Server version: 3.28.2 (Cloud)
Xcode version: 11.3
iOS/OSX version: iOS 13.3
Dependency manager + version: Carthage 0.33

Hey @raudabaugh . Do you have any examples of the codepaths that can lead to this error?

That’s a great question. It’s just getting passed to SyncManager.shared.errorHandler, so I don’t have any idea what led up to that or how to go about debugging it. It’s not something I am seeing when running the app myself, but something we have found in logs from other users.

I am closing this issue due to inactivity, If you are still experiencing this problem please open a new issue.


[Issue #111]Fix Inconsistent addressing schemes used by sockets in SparkCLR

In Microsoft.Spark.CSharp.Core.RDD, method Collect creates a socket without explicitly specifying the AddressFamily, which by default is InterNetworkv6 (ip v6). This also cause "invalid argument" exceptions on Linux when calling collect on RDD.
This is also inconsistent with other places in SpakCLR, e.g., SparkCLRSocket or JvmBridge, where sockets always explicitly use AddressFamily.InterNetwork (ip v4).

Hi @kai-zeng, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Kai Zeng). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

LGTM

LGTM

Yes, should get consistent. Will fix it.
Curious, did you actually observe any problems?
Since client side should be overridden by address family used in s.Connect(“<IP_ADDRESS>”, port)
Thanks,
Renyi.
From: Kai Zeng<EMAIL_ADDRESS>Sent: Tuesday, December 1, 2015 11:15 PM
To: Microsoft/SparkCLR<EMAIL_ADDRESS>Subject: [SparkCLR] Fix Inconsistent addressing schemes used by sockets in SparkCLR (#112)
In Microsoft.Spark.CSharp.Core.RDD, method Collect creates a socket without explicitly specifying the AddressFamily, which by default is InterNetworkv6 (ip v6). This also cause "invalid argument" exceptions on Linux when calling collect on RDD.
This is also inconsistent with other places in SpakCLR, e.g., SparkCLRSocket or JvmBridge, where sockets always explicitly use AddressFamily.InterNetwork (ip v4).

You can view, comment on, or merge this pull request online at:
https://github.com/Microsoft/SparkCLR/pull/112
Commit Summary

explicitly specify AddressFamily when creating sockets

File Changes

M csharp/Adapter/Microsoft.Spark.CSharp/Core/RDD.cshttps://github.com/Microsoft/SparkCLR/pull/112/files#diff-0 (2)

Patch Links:

https://github.com/Microsoft/SparkCLR/pull/112.patch
https://github.com/Microsoft/SparkCLR/pull/112.diff

—
Reply to this email directly or view it on GitHubhttps://github.com/Microsoft/SparkCLR/pull/112.

This PR looks fine for me.

@xiongrenyi Yes, I got SocketException saying "Invalid Argument" when running using Mono on Linux. On windows it works fine though.


Fix out of space error when installing grub

For some reason there is an error when trying to install grub on UEFI. Please increase the boot parttion from 100mb to 512mb.

This has been fixed in big update today.


Scheduling a flow error - An error occurred while trying to update the record. Please try again.

I keep getting this error when trying to schedule an auto-scheduled flow:  An error occurred while trying to update the record. Please try again.
I don't get the error if I pick a different auto-scheduled flow.  I don't get the error in another sandbox, same system admin profile.
Any suggestions welcome amigo!

This happened to me, but it was related to the Flow API name. I simplified the flow name and it was possible to schedule.
Comigo aconteceu isto, mais era relacionado ao nome de API do Flow. Simplifiquei o nome do flow e o mesmo foi possivel agendar.

I've just encounter the same error and thankfully found this post to resolve the problem. However, I'm perplexed why the Schedul-o-matic Entry Name field (Name) in the Schedul-o-matic Entry object, and is only 80 characters, is used to store the Flow name when a flow name can considerably longer, providing the first 80 characters designate a unique flow name, or the flow API name is modified to be unique and keep within the 80 character limit. It would be better to use the Name field to hold the flow API name and have the Schedul-o-matic Entry Name field a custom field long enough to hold the flow name plus the datetime string appended to the end of the name by Schedul-o-matic when creating the entry.

Apologies, that's one I missed when I made the app! Alas, I'm no longer with the Ohana and can no longer make updates the repo. (Alas!)


Separator inherits icon of menu item created before it

Describe the bug
After creating a menu item with an icon, a separator created right after "inherits" that icon in its representation in the overview of menu items. It does not show up in the app itself. Deleting the separator, leaving the site structure settings and returning to recreate the separator fixes the problem.
To Reproduce
Steps to reproduce the behavior:

Create a menu item, e.g. a page, and give its link an icon
Create a separator right after

Expected behavior
The separator not to have the icon before its label.

fixed in #2690


Event lookup cache

Codecov Report

Merging #593 (800e716) into main (be62be6) will not change coverage.
The diff coverage is 100.00%.

:exclamation: Current head 800e716 differs from pull request most recent head f8920ed. Consider uploading reports for the commit f8920ed to get more accurate results

@@            Coverage Diff             @@
##              main      #593    +/-   ##
==========================================
  Coverage   100.00%   100.00%
==========================================
  Files          304       305     +1
  Lines        17801     18006   +205
==========================================
+ Hits         17801     18006   +205

Impacted Files
Coverage Δ

pkg/fftypes/event.go
100.00% <ø> (ø)

internal/apiserver/route_get_events.go
100.00% <100.00%> (ø)

internal/assets/manager.go
100.00% <100.00%> (ø)

internal/assets/token_transfer.go
100.00% <100.00%> (ø)

internal/batch/batch_manager.go
100.00% <100.00%> (ø)

internal/batch/batch_processor.go
100.00% <100.00%> (ø)

internal/broadcast/definition.go
100.00% <100.00%> (ø)

internal/broadcast/manager.go
100.00% <100.00%> (ø)

internal/broadcast/message.go
100.00% <100.00%> (ø)

internal/config/config.go
100.00% <100.00%> (ø)

... and 33 more

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 be62be6...f8920ed. Read the comment docs.


Updating scaffolding submodule

@natemcmaster @vijayrkn - this is the updated version, after making Nate's suggested changes in aspnet/scaffolding


add NATIONAL EXPERIMENTAL UNIVERSITY OF GUAYANA

https://www.uneg.edu.ve/ NATIONAL EXPERIMENTAL UNIVERSITY OF GUAYANA
Please add the domain of the University.

@llopez594 First stage of verification passed, official domain is uneg.edu.ve as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.


Serialized tag of SetOf is not correct

Hi there,
I was trying to use this crate to serialize a SetOf data and found that the serialized tag of SetOf is 0x30, but the correct one should be 0x31 if I understand it correctly.
The issue can be demonstrated by a simple example:
let it = [2, 3, 4].iter();
let set = SetOf::from_iter(it);
let mut der = Vec::new();
set.write_der(&mut der).unwrap();

The content of der is:

30 09 02 01 02 02 01 03 02 01 04

which I think should be:

31 09 02 01 02 02 01 03 02 01 04

My wild guess is that the tag for Vec is always Tag::Sequence.
Could you please advise if this is an issue or not? Thanks.

Hi,
You're right, the encoding is wrong. The set is internally using a Vec, and write_der_header was delegating the call.
This is fixed in the next commit.
Thanks


Send mouse-enter notification, when viewport receives a mouse motion event

Ensure, that a SubViewport receives a NOTIFICATION_VP_MOUSE_ENTER, when an InputEventMouseMotion is sent to a viewport, that currently doesn't have the mouse inside.
In the following case the changed code makes a difference: By default the viewport has the state, that the mouse is not over the viewport.
When the user pushes an InputEventMouseMotion to a SubViewport, then because of the default state, the Viewport assumes, that the mouse is not over itself and acts accordingly, leading to the behavior described in #89757.
With this change, the Viewport automatically switches its state.
Make necessary adjustments to unit-tests.
The behavior got introduced by #88992, which by itself was a step in the right direction, but caused undesired behavior.
This change would have introduced problems before #89920, because sometimes it was possible, that a Viewport received mouse motion events even when the mouse was outside of the viewport.
Resolve #89757 and also duplicate #90413. (I have verified the MRPs of both reports)
Supersedes #89868
Instead of this change, the problem can also be solved, by updating the documentation and explaining, that the user not only needs to push input events to SubViewports, but is also responsible for sending NOTIFICATION_VP_MOUSE_ENTER and NOTIFICATION_VP_MOUSE_EXIT when necessary.
While I believe, that this documentation change would be conceptually the correct way to go forward, it would be less user-friendy and I don't forsee direct problems with the approach of this PR, because before #88992 the SubViewports be default had as state gui.mouse_in_viewport == true.
All in all, this PR seems a bit hacky to me.

In the MRP and without this PR, when you hold mouse button, the motion events are received. It's happening without NOTIFICATION_VP_MOUSE_ENTER and releasing the button stops motion from being received. I wonder why is that 🤔
While you say these changes are a hack, technically receiving a mouse event means the mouse is over viewport, so I think it's correct. Though the mouse over is never dropped, not sure if it has undesirable effects. Maybe it should be documented that you should manually drop mouse over if you pushed mouse events to viewport.

Superseded by #99890


Support requesting extra resources

What problem are you facing?

We manage infrastructure with crossplane. Our compositions refer to some observe only resources (via the new beta style management policies). As of today, we need to create observe-only resources for each composition. Those resources could be global networks, flavors/hardware templates, or other resources that are commonly provided by the cloud provider.
How could this Function help solve your problem?

With the new feature of requesting extra resources in Crossplane 1.15, go template could fetch those extra resources and provide them as variables in the go template via the RunFunction request. This would have the following benefits:

Less observed resources needed (1 per XRD/Composition, instead of 1 per XR) -> therefore, there is less load on the provider
Faster composition creations. We do not need to wait until the observe resources are ready.

Thanks for opening this! I wanted to do the same for a while!
My thinking was that this could be implemented via an additional resource similar to what we do for the CompositeConnectionDetails, e.g.:
apiVersion: meta.gotemplating.fn.crossplane.io/v1alpha1
kind: ExtraResources
resource-1:
  ...selector...
resource-2:
  ...selector...

The other option would be to have it in the input and not as part of the template, but that would be much less powerful as one could not request extra resources based on the resources available, either observed or desired from previous steps in the pipeline

@phisco this ExtraResources idea looks great and helps customising compositions using go-templating-function with details from other existing resources.
Do we have any timelines for the release of this feature

Just need some more testing on https://github.com/crossplane-contrib/function-go-templating/pull/83.
In the meantime you can check function-extra-resources, it should cover most of your needs!

this is more suitable for my use case where i want to take list of labels as input and use them to get resources , where as in function-extra-resource i should know the keys for all labels before hand and values can be taken from composite
and also this will avoid using one additional function as well in the composition
waiting for this feature to be released

This would support several use cases for us, too. We've used function-extra-resource, but we have cases where we need a selector that is based on multiple values from the composition, and FER only supports type: FromCompositeFieldPath (no combines or the like).  The approach discussed here would provide the most flexible means to construct a resource selector from any of the data available to the function.  I'd considered proposing writing desired resource selectors to the Context, but just emitting ExtraResources objects from the template is a much better API (kudos @phisco). Looking forward to seeing this make it in.