Form Submit issue

The form renders fine, however on the submission the form data is not returned, what am I missing, template shown below:

Member Information

First Name

I can't get BeginForm to compile. I get the 'HtmlHelper does not contain definition or extension method for BeginForm'... how do I get the engine to reference the extension method?

My guess is that you have not included the System.Web.Mvc namespace in your default namespaces. When defining your TemplateService, try defining your namespaces, e.g.
    private static readonly TemplateService _templateService = new TemplateService(new TemplateServiceConfiguration
    {
        BaseTemplateType = typeof(MyTemplateBase<>),
        Resolver = new MyTemplateResolver(),
        Namespaces = new HashSet<string>(new string[] {
            "System",
            "System.Collections",
            "System.Collections.Generic",
            "System.Globalization",
            "System.Linq",
            "System.Web",
            "System.Web.Mvc",
            "Whatever.Else"
        })
    });

@antscode That did it. Thank you!

does this mean there is a way to get Html.BeginForm, and Html.Raw to work? can someone share a sample link?


Feature: Add a side nav bar

Feature description
adding a side nav bar.
i am a gssoc23 contributor please assign this issue to me @SauravMukherjee44
👀 Have you spent some time to check if this issue has been raised before?

[X] I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Can you elaborate a little more what that side bar will contain @ePSA-eJya

Can you elaborate a little more what that side bar will contain @ePSA-eJya

it will be similar to this.

I mean what will be the contents as we already have a top navbar, will the contents be any different


[AppConfig] Prepare for Aug 2022 Patch release.

API change check
API changes are not detected in this pull request.


How can I write the regular expression for async and defer for this module.

How can I write the regular expression for async and defer for this module.

Hello,
You can try the following regex:
^((?!require.js).)*$
This regex should match all js except the require js, to avoid issues with loading.
Please let me know if this works for you.


GUARD-2792 3dCart: Migrate to .NET Standard

GUARD-2792
Summary
Migrate the solution .NET Standard 2.0.
Background
Have to do this to meet the hosting deadline of August 2024.
About these changes

Change to .NET Standard 2.0 /.NET Framework 4.8 multi-target.

When tried single-target .NET Standard, the auto-generated Reference.cs (based on .wsdl) started showing compile errors about System.ServiceModel sub-types not being available in .NET Standard.
a. Tried regenerating this Reference.cs in VS (no apparent way in Rider). Also tried generating using dotnet-svcutil (as in netSuiteAccess). Still wouldn’t compile.
b. But dotnet-svcutil added apparently .NET Standard-compatible System.ServiceModel.* NuGet packages. Kept this, since it allowed the build to succeed.
c. Removed the explicit reference to System.ServiceModel from .csproj, undid any auto-generated changes (new files or updates), and it then compiled

Remove unneeded parts of .csproj
Add PrivateAssets for NuGet packages as needed:

When I pointed v1 to the new NuGet package (multi-target) got conflicts between versions in v1: Netco, and a few other packages. Once changed the packages to PrivateAssets="All" it worked.

Add System.ServiceModel.* NuGet assemblies. These were added when I tried to regenerate the References.cs files with dotnet-svcutil. They're still needed for multi-target
Remove GlobalAssemblyInfo.cs from solution; remove AssemblyInfo.cs from ThreeDCartAccess project. Move the assembly and package info to the ThreeDCartAccess project PropertyGroup

(See “Step 2” in https://arminreiter.com/2017/05/port-net-framework-net-standard/ for reference)

Delete .build.ps1 script and the files it calls
Migrate packages.config to PackageReference
Add Rider folders to .gitignore

NOTE: In this ticket will also "Implement automated NuGet package pushing" (see item number 3 in the parent epic TD-194). Will do this in a separate PR.
PR Readiness Checklist

[x] Followed development conventions to the best of my ability
[ ] Code is documented, particularly public interfaces and hard-to-understand areas
[ ] Tests are updated / added and all pass
[x] Performed a self-review of my own code
[x] Acceptance criterias are confirmed by testing changes in UI (or another appropriate way)
[ ] Confluence documentation is updated, if needed
[x] New code does not generate new warnings

@maxim-skuvault Looks good!
GUARD-2792 has an Epick TD-194 and in TD-194 we have this point:

Implement automated NuGet package pushing like we did for Etsy

Should this be done as a part of this ticket or it will be done later?

@SShumer
1.

@maxim-skuvault Looks good! GUARD-2792 has an Epick TD-194 and in TD-194 we have this point:

Implement automated NuGet package pushing like we did for Etsy

Should this be done as a part of this ticket or it will be done later?

Yes, it is part of these .NET Standard tickets. See the note at the bottom of the ticket description:

NOTE: In this ticket will also "Implement automated NuGet package pushing" (see item number 3 in the parent epic TD-194). Will do this in a separate PR.

When I pointed v1 to the new NuGet package (multi-target) got conflicts between versions in v1: Netco

That's strange, we are using the same Netco version in v1.

Initially, I changed this project to just .NET Standard 2.0 (no multi-target) and Netco 3.0.0, but then had issues building in v1. This and other issues.


Ace-GUI crashing on Macmillan large book

The Macmillan title Modeling with Regression is in the Publisher's Face off Dropbox folder. I have used the Commandline to get a report, but another. I have rebooted my system several times.  every time I run the Ace-GUI it crashes for one reason or another. It is always an internal error.

I believe this is fixed in the latest version available in the release section of this GitHub project. The fix is to allow a maximum of 8 minutes of evaluation for each HTML document in the publication, beyond which point a timeout is triggered that fails the accessibility evaluation for the publication as a whole (there was a bug before whereby some of the evaluation report was retained, despite the failure of some chapters to be completely evaluated).


Change fieldFromJs to allow setting fields as null/undefined

Before this, string fields would accept null/undefined, and immediately
call toString() on them, resulting in "null"/"undefined". Other field
types would error out. Now we allow setting fields as null/undefined, so
doing something like:
myCap.myMethod(1, "2", null, "4", myObj["notAKey"])

is possible.

That's a nice and elegant solution, though what about null elements in a pointer list (list-of-lists or list-of-blobs)? Maybe we don't really care?
Hmm, I feel like there's an argument to be made that null should only be accepted for pointer types (not primitive-typed fields) and undefined should only be accepted for struct fields (not list elements), but maybe I'm getting carried away?


Add CurrentPlayItemInquiry Intent.

Has Alexa speak the currently playing movie, show, or album/artist/song.

There is just a nagging conflict. I added a bunch of stuff I'd been working on last night so if you could fix the conflict, that'd be great.

I will fix the conflict this week.  Thanks for merging the other PRs :)

Sorry it took me so long!

Rebased and resolved conflicts.

I broke it again with your other PR!

lol give me 1 min and I'll fix

Rebased.  Sorry, should be clean now!


how can I throws error earlier when I got wrong data

PLEASE READ THE TROUBLESHOOTING GUIDE.

You read the guide but it didn’t help? OK, we’re here to help.

Please specify the PromiseKit major version you are using
Please format your code in triple backticks and ensure readable indentation
Please specify how you installed PromiseKit, ie. Carthage, CocoaPods, SwiftPM or other. If other provide DETAILED information about how you are integrating PromiseKit.

If you ignore this template we will close your ticket and link to this template until you provide this necessary information. We cannot help you without it.

Hello @cleexiang
Please provide some code.

No context = no help


Update README.md

your repo is great btw! here is a little simplicity for new people such as myself

I converted 3 mkdir's to 1 because I missed one and it took me a bit to realize that I had done so. Sometimes it really is best to copy and paste :)

Sorry, but I found it more clear to have one mkdir per line.


[gui error report] Error: Initializing daemon...

Desktop: 0.38.0
OS: darwin 23.6.0 arm64
Electron: 31.0.1
Chrome: 126.0.6478.36

Error: Initializing daemon...
Kubo version: 0.30.0
Repo version: 16
System version: arm64/darwin
Golang version: go1.22.7
PeerID: 12D3KooWB4aaSx3GQ7weyCFTYTP1htmQLjAzB5ZnDWV1araTnKUn
2024-10-05T17:24:56.558 0800	ERROR	core	core/builder.go:158	constructing the node: could not build arguments for function "github.com/ipfs/kubo/core/node".PeerWith.func1 (github.com/ipfs/kubo@v0.30.0/core/node/peering.go:30): failed to build *peering.PeeringService: could not build arguments for function "github.com/ipfs/kubo/core/node".Peering (github.com/ipfs/kubo@v0.30.0/core/node/peering.go:14): failed to build host.Host: received non-nil error from function "github.com/ipfs/kubo/core/node/libp2p".Host (github.com/ipfs/kubo@v0.30.0/core/node/libp2p/host.go:41): failed to parse multiaddr "/ip4/<IP_ADDRESS>/tcp/4001/ipfs/16Uiu2HAm8aL46fXujfEBF2G35x6evXXq1n4FqJ64ikmN4JQQwv97H1c3Q7cbVXn3J4g9aLUnF4x8Y6qSjQdQJUpSHaK7bgy": invalid value "16Uiu2HAm8aL46fXujfEBF2G35x6evXXq1n4FqJ64ikmN4JQQwv97H1c3Q7cbVXn3J4g9aLUnF4x8Y6qSjQdQJUpSHaK7bgy" for protocol p2p: failed to parse p2p addr: 16Uiu2HAm8aL46fXujfEBF2G35x6evXXq1n4FqJ64ikmN4JQQwv97H1c3Q7cbVXn3J4g9aLUnF4x8Y6qSjQdQJUpSHaK7bgy multihash length inconsistent: expected 2

@pandapls you've made manual changes to configuration file and put invalid multiaddr with "/ipfs/" segment.
Remove entry with `/ipfs/16Uiu2HAm8aL46fXujfEBF2G35x6evXXq1n4FqJ64ikmN4JQQwv97H1c3Q7cbVXn3J4g9aLUnF4x8Y6qSjQdQJUpSHaK7bgy" and try again.
ps. in future, try user support provided by community at https://discuss.ipfs.tech/c/help/13


backport v1.8: Fix possible deadlock when querying netdevs

See commit msgs.

test-backport-1.8

Runtime provisioning failure:
https://jenkins.cilium.io/job/Cilium-PR-Runtime-4.9/3821/
Upstream also failed to provision, although the Jenkins infrastructure did not identify that as the root cause:
https://jenkins.cilium.io/job/Cilium-PR-K8s-Upstream/2878/
Travis hit a pull ratelimit from Docker:
https://travis-ci.com/github/cilium/cilium/jobs/488513594

test-runtime

test-upstream-k8s

@brb #15193 already bumps the netlink library. Is the library bump here necessary?


virt-controller and virt-operator aborted and the status is "Error"

What happened:
I have 10 VM created by helm chart and they're running, then I'd like to delete them all and I execute 'helm uninstall' to delete in parallel.  Unfortunately the VM won't be deleted meanwhile the virt-api and virt-operator aborted for some problems.
Does anyone know how to handle this issue?
Thanks
kubectl get pod -n kubevirt-system
NAME                                                 READY    STATUS     RESTARTS         AGE
kubevirt-manager-85f456cffb-xhw6r   1/1     Running   0                6d23h
virt-api-7bfffbcff5-d6fdf           1/1     Running   0                6d23h
virt-controller-db9d74766-svqzq     0/1     Error     38 (17m ago)     6d5h
virt-controller-db9d74766-t97gc     0/1     Error     36 (4m48s ago)   6d5h
virt-handler-vvp8v                  1/1     Running   0                6d23h
virt-operator-798d8b8cc4-2pxlw      0/1     Error     38               6d23h
virt-operator-798d8b8cc4-c6jdm      0/1     Error     40 (4m48s ago)   6d23h
virtvnc-5fb5658f57-srsg5            1/1     Running   0                6d23h
kubectl describe po virt-controller-db9d74766-svqzq -n kubevirt-system
Warning  Unhealthy    22m                    kubelet  Readiness probe failed: Get "https://<IP_ADDRESS>:8443/leader": dial tcp <IP_ADDRESS>:8443: connect: connection refused
Warning  Unhealthy    22m                    kubelet  Liveness probe failed: Get "https://<IP_ADDRESS>:8443/healthz": dial tcp <IP_ADDRESS>:8443: connect: connection refused
Normal   Pulled       21m (x2 over 3d7h)     kubelet  Container image "harbor.cloud.net/quay.io/kubevirt/virt-controller:v1.2.2" already present on machine
Normal   Created      21m (x2 over 3d7h)     kubelet  Created container virt-controller
Warning  FailedMount  7m13s (x2 over 7m13s)  kubelet  MountVolume.SetUp failed for volume "kubevirt-controller-certs" : object "kubevirt-system"/"kubevirt-controller-certs" not registered
Warning  FailedMount  7m13s (x2 over 7m13s)  kubelet  MountVolume.SetUp failed for volume "kubevirt-export-ca" : object "kubevirt-system"/"kubevirt-export-ca" not registered
Warning  FailedMount  7m8s (x2 over 7m11s)   kubelet  MountVolume.SetUp failed for volume "kubevirt-export-ca" : failed to sync secret cache: timed out waiting for the condition
Warning  FailedMount  7m8s (x2 over 7m11s)   kubelet  MountVolume.SetUp failed for volume "kubevirt-controller-certs" : failed to sync secret cache: timed out waiting for the condition
Warning  Unhealthy    4m33s (x3 over 5m53s)  kubelet  Liveness probe failed: Get "https://<IP_ADDRESS>:8443/healthz": dial tcp <IP_ADDRESS>:8443: connect: connection refused
Warning  Unhealthy    4m33s (x3 over 5m53s)  kubelet  Readiness probe failed: Get "https://<IP_ADDRESS>:8443/leader": dial tcp <IP_ADDRESS>:8443: connect: connection refused
Normal   Pulled       4m28s (x3 over 7m3s)   kubelet  Container image "harbor.cloud.net/quay.io/kubevirt/virt-controller:v1.2.2" already present on machine
Normal   Created      4m16s (x3 over 6m46s)  kubelet  Created container virt-controller
Normal   Started      4m13s (x3 over 6m39s)  kubelet  Started container virt-controller
k describe po virt-operator-798d8b8cc4-c6jdm -n kubevirt-system
Warning  FailedSync   22m    kubelet  error determining status: rpc error: code = Unknown desc = Error response from daemon: No such container: d8628b503dab3068510c20d849dd0a92790d63fde7d9c5f5ecc54ce1be65600e
Normal   Pulled       15m    kubelet  Container image "harbor.cloud.net/quay.io/kubevirt/virt-operator:v1.2.2" already present on machine
Normal   Created      15m    kubelet  Created container virt-operator
Warning  FailedMount  7m38s  kubelet  Unable to attach or mount volumes: unmounted volumes=[kubevirt-operator-certs profile-data kube-api-access-rwlwk], unattached volumes=[kubevirt-operator-certs profile-data kube-api-access-rwlwk]: timed out waiting for the condition
Normal   Pulled       7m27s  kubelet  Container image "harbor.cloud.net/quay.io/kubevirt/virt-operator:v1.2.2" already present on machine
Normal   Created      7m8s   kubelet  Created container virt-operator
Normal   Started      7m     kubelet  Started container virt-operator
What you expected to happen:
No errors occurred and all VMs can be deleted in parallel
How to reproduce it (as minimally and precisely as possible):

create 10 VMs with corresponding helm chart
perform "helm uninstall " in parallel in a loop
check the status of virt-controller and virt-operator, it will be 'Error'

Additional context:
I created a helm chart for creating/deleting VM
Environment:

KubeVirt version (use virtctl version):  1.2.2
Kubernetes version (use kubectl version):  1.26
VM or VMI specifications:  just a normal VM
Cloud provider or hardware configuration: N/A
OS (e.g. from /etc/os-release):  openeuler 22.03 (kernel 5.15.163)
Kernel (e.g. uname -a):  5.15.163
Install tools:  helm
Others: N/A

Can you please see if there are any logs in the pods and attached them here?

sure, I'll update some more details later, thanks for your quick response


Tips without previews are not displayed good

The backend does not return preview for some tips. @kenodressel

https://superhero.com/tip/1833

failReason: "INVALID_URL, Need to provide a valid URL."
Its missing a protocol :/

I see its missing protocol, but cant we prepend https:// by default if there is none provided - and crawl for preview?

I agree, I made an issue in the backend. I guess we can close this now.


UVI Request

--- UVI JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v2.6.35 to before v5.10.54",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=bece7b2398d073d11b2e352405a3ecd3a1e39c60",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=1582a02fecffcee306663035a295e28e1c4aaaff"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "bece7b2398d073d11b2e352405a3ecd3a1e39c60",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "1582a02fecffcee306663035a295e28e1c4aaaff",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "net: fix uninit-value in caif_seqpkt_sendmsg\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.10.54 by commit 1582a02fecffcee306663035a295e28e1c4aaaff, it was introduced in version v2.6.35 by commit bece7b2398d073d11b2e352405a3ecd3a1e39c60. For more details please see the references link."
}
--- UVI JSON ---

This issue has been assigned UVI-2021-1001245


.NET 7: Request decompression middleware

Request decompression middleware
See https://github.com/dotnet/aspnetcore/pull/40279
Put sample here then delete the readme file

@david-acker would you be interested in writing a sample app showing how to use you new Request decompression middleware?

@david-acker would you be interested in writing a sample app showing how to use you new Request decompression middleware?

Absolutely! I'd be happy to put something together.


make chat colorful

Fixes #256
This adds one of 8 colors to every username (unfortunately only for future messages but hey...)
IMO the colors look great in both, light and dark mode:

light
dark

Colors are looking dope! 🔥


[BUG] Get-PnPPlannerTask : Object reference not set to an instance of an object.

Reporting an Issue or Missing Feature
Get-PnPPlannerTask
Expected behavior
Get-PnPPlannerTask should return tasks in the specified plan.
Actual behavior
Get-PnPPlannerTask : Object reference not set to an instance of an object.
At line:1 char:1

Steps to reproduce behavior

Connect to PnPOnline with the -Interactive parameter to enable graph API support.
Get a list of plans in a group.
Get a list of tasks in a plan by plan ID.

What is the version of the Cmdlet module you are running?
1.9.0
Which operating system/environment are you running PnP PowerShell on?

[X] Windows
[ ] Linux
[ ] MacOS
[ ] Azure Cloud Shell
[ ] Azure Functions
[ ] Other : please specify

@jsmartbnl - I have tried on a commercial tenant and have no problem. I'll tag the issue as a GCC, but unfortunately, I don't think we have access to such a tenant. I'd recommend you open a support case with Microsoft directly to have confirmation.

Closing for now, but feel free to reopen when you have confirmation and we can troubleshoot further.


Build failure when using Makefiles on macOS

Host OS
ProductName:    Mac OS X
ProductVersion: 10.14.3
BuildVersion:   18D42

Compiler/SDK
Xcode 10.1
Build version 10B61

Reproduction steps:

use cmake to build using "Unix Makefiles" on macOS platform
build CppMicroServices using "make"

Build error:
Scanning dependencies of target gmock
[  1%] Building CXX object third_party/googletest/googlemock/CMakeFiles/gmock.dir/__/googletest/src/gtest-all.cc.o
[  1%] Building CXX object third_party/googletest/googlemock/CMakeFiles/gmock.dir/src/gmock-all.cc.o
[  1%] Linking CXX static library ../../../lib/libgmockd.a
[  1%] Built target gmock
Scanning dependencies of target gmock_main
[  1%] Building CXX object third_party/googletest/googlemock/CMakeFiles/gmock_main.dir/__/googletest/src/gtest-all.cc.o
[  2%] Building CXX object third_party/googletest/googlemock/CMakeFiles/gmock_main.dir/src/gmock-all.cc.o
[  2%] Building CXX object third_party/googletest/googlemock/CMakeFiles/gmock_main.dir/src/gmock_main.cc.o
[  2%] Linking CXX static library ../../../lib/libgmock_maind.a
[  2%] Built target gmock_main
Scanning dependencies of target gtest
[  2%] Building CXX object third_party/googletest/googlemock/gtest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
[  2%] Linking CXX static library ../../../../lib/libgtestd.a
[  2%] Built target gtest
Scanning dependencies of target gtest_main
[  3%] Building CXX object third_party/googletest/googlemock/gtest/CMakeFiles/gtest_main.dir/src/gtest_main.cc.o
[  3%] Linking CXX static library ../../../../lib/libgtest_maind.a
[  3%] Built target gtest_main
Scanning dependencies of target usResourceCompiler
[  3%] Building CXX object tools/rc/CMakeFiles/usResourceCompiler.dir/ResourceCompiler.cpp.o
[  4%] Building C object tools/rc/CMakeFiles/usResourceCompiler.dir/__/__/third_party/miniz.c.o
[  4%] Building CXX object tools/rc/CMakeFiles/usResourceCompiler.dir/__/__/third_party/jsoncpp.cpp.o
[  4%] Linking CXX executable ../../bin/usResourceCompiler4
[  4%] Built target usResourceCompiler
Scanning dependencies of target jsonschemavalidator
[  4%] Building CXX object tools/jsonschemavalidator/CMakeFiles/jsonschemavalidator.dir/main.cpp.o
[  4%] Linking CXX executable ../../bin/jsonschemavalidator
[  4%] Built target jsonschemavalidator
Scanning dependencies of target util
[  5%] Building CXX object util/CMakeFiles/util.dir/src/BundleObjFactory.cpp.o
[  5%] Building CXX object util/CMakeFiles/util.dir/src/BundleObjFile.cpp.o
[  5%] Building CXX object util/CMakeFiles/util.dir/src/Error.cpp.o
[  5%] Building CXX object util/CMakeFiles/util.dir/src/FileSystem.cpp.o
[  6%] Building CXX object util/CMakeFiles/util.dir/src/String.cpp.o
[  6%] Built target util
[  6%] Checking resource dependencies for CppMicroServices
[  6%] Linking resources zip file for CppMicroServices
In file included from /home/abhished/Videos/CppMicroServicesFork/CppMicroServices/cmake/CMakeResourceDependencies.cpp:23:
In file included from /Applications/Xcode10.1.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/iostream:38:
In file included from /Applications/Xcode10.1.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/ios:215:
In file included from /Applications/Xcode10.1.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/iosfwd:90:
/Applications/Xcode10.1.0.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/wchar.h:119:15: fatal error: 'wchar.h' file not found
#include_next <wchar.h>
              ^~~~~~~~~
1 error generated.
make[2]: *** [framework/CppMicroServices/cppmicroservices_resources.o] Error 1
make[1]: *** [framework/CMakeFiles/CppMicroServices.dir/all] Error 2
make: *** [all] Error 2

Fixed in PR #352


F3 menu freaks out when installed with Very Many Players

When the mod is installed with VMP, the F3 menu always shows 1FPS and a lot of the statistics seem to update much faster than they normally should.

A weird side note is that it seems to randomly fix itself at times, though I haven't been able to reproduce this behaviour since finding the cause so maybe I'm just making things up at this point
Tested on 1.20.2 as well and the same issue occurs so I'm assuming it happens on all versions

Does it still happen if you have just VMP and BadOptimizations in your mods folder?

Yes, I spent like an hour bisecting my mods list and made sure it only happened with the 2 mods installed before I made this issue

can i see your log? just to see if there's any mixin conflicts

latest.log
None as far as I can tell

fixed, should be out on curseforge/modrinth in 20 minutes or so

Seems to work, thanks!


Go 1.16 prod release

Issue #, if available:
https://github.com/aws/eks-distro-internal/issues/241
Description of changes:
Trigger first release of EKS Go 1.16
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve

/lgtm


SSH Tunnel to server thru a jump server

Hi,
I have setup where i have jump server in between
So it is like: Client --SSH--> Jump Server --SSH--> Server
In my mac i have used ProxyCommand in .ssh/config to create a ssh tunnel to the server
Thus my config file has server defined as:
Host jump
        HostName <JUMP IP>
        User dhaval
        IdentityFile <PATH TO KEY>
Host app
        HostName <APPIP>
        User dhaval
        IdentityFile <PATH TO KEY>
        ForwardAgent yes
        ProxyCommand ssh jump nc %h %p 2> /dev/null

Thus I am able to do a ssh to server using command ssh app
Now the queries:

I am not able to use app as host name in Dbeaver, although it is mentioned in .ssh/config
When I try IP of jump server and test ssh tunnel in DBeaver it goes thru but if I use IP of server it doesn't go thru

Any pointers will be helpful
~DKS

I'm having a similar problem as this. Is there any update or workaround for it?

Any update?

I also have a similar issue.
Is there any way to use ssh/config?

Maybe there is a possible workaround if we could write the exact shell command to use for SSH connection, so in the example mentioned in this ticket, instead of filling the form we could opt to write: ssh app or /usr/bin/ssh app.
Or adding support for the -J flag in OpenSSH.
Meanwhile... what workaround would you suggest?

As a feature request:

Add support for the -J flag in OpenSSH.
Allow a free form field to just write the ssh command. E.g. ssh app.

Meanwhile... what workaround would you suggest?

I have the same problem, and there's no way to connect. So I switched back to PgAdmin until there's a solution for this in Dbeaver. It works in PgAdmin.

Probably this issue will be resolved by #7164
Thanks to @bsv798

verified

OP wanted:
Client --SSH--> Jump Server --SSH--> Server.
Use case: ssh through a gateway into a virtual machine's sshd, and use port forward from there.
#4516 implements this:
Client --SSH--> Remote host --port forward--> Server.
This doesn't work if the Server allows only SSH from outside and database connections are limited to localhost.

This doesn't work if the Server allows only SSH from outside and database connections are limited to localhost.

In that case both Remote host and Server must be the same machine. Then, it should work.

I have a similar problem
The work around with "Shell Commands in connections settings" doesn't work for me
The only solution I found so far is to:

Connect to the jumphost (ssh jumpuser@jumphost)
From the jumphost, local forward the port (ssh -f -N user@target -L portFwd:localhost:portDB)
Then go back to my local machine and I can connect via DBeaver (SSH tab, host: jumphost, user: jumpuser, port: portFwd)

For those remaining blocked by this approach :
Client --SSH--> Jump Server --SSH--> Server
The following ssh command in terminal allowed me to forward local port 1234 to Server port 5432
ssh -L 1234:localhost:5432  [user]@[Jump Server Address] [user]@[Server Address]
Then i was able to connect directly with dBeaver on port 1234 (without using SSH tunnel configuration)


dmonitoring_model.keras can't load

user keras 2.3.0 and tensorlfow 2.2.0
from tensorflow.keras.models import load_model, model_from_config
model = load_model('dmonitoring_model.keras')

result
TypeError: Error converting shape to a TensorShape: Dimension value must be integer or None or have an index method, got 80.0.

Reason, dmonitoring_model.keras is empty.  You should dowload model files again.

this happens because TF2.2 requires tensor shape to be int only -- try 2.1 or 2.0?
future models won't have this problem.


Remove composer dependency

Composer is a quite heavy dependency. From what I see you're using only Composer\Autoload\ClassMapGenerator and it shouldn't be that hard to replace this with some custom code. What do you think? Do I miss something?

Feel free to do a pull request to improve this.


Server 1.19.2 ping and connection problems

Hello,
In CraterLib 2.1.0 Minecraft 1.19.2, the mod creates major server problems. Impossible to ping it, can't even connect to it. A “HangingItem” error report would appear

Any logs please with the full errors?

Fix released. Thanks for reporting


Use dynamic warning when speeches delivered on is set in the future

Description
This pops up warning text below the date inputs when the user selects a date in the future for the delivered on field.
When JS is not present the warning will not show as it's hidden via CSS.
Screenshot
Without warning

With warning

Trello card
https://trello.com/c/gX8vPdmg/82-show-a-warning-message-if-speech-delivered-on-date-is-in-the-future
⚠ This repo is Continuously Deployed: make sure you follow the guidance ⚠
Follow these steps if you are doing a Rails upgrade.

Awesome thanks for that! Have added it in


How can we use the cancelRequestForRequestReceipt ?

Hey all, we are struggling to cancel request that sent already ..  ( i am not talking about cases when we want to cancel request because we already sent the same request ) ... i guess we need to use the methods: cancelRequestForRequestReceipt .. the problem is that it's not clear how to get this RequestReceipt.
i will try to provide an example:
we have a collection view with different images ( each image have a different url ) .. if i will scroll back and forward fast , the method af_cancelImageRequest will do the job and will not create 2 active request for the same url .. Great !, the problem is when we try to scroll only to 1 direction and we have 100 images .. basically we want to be able to cancel the request that just sent but the image is not return, meaning we don't have the image and we don't AlamofireImage to continue with that request ...  ( cause by slow internet and fest scrolling ) ..
So, if we got it right , we can use cancelRequestForRequestReceipt ... the problem is that we can't find how to get this RequestReceipt ...
Help :)

Hi @magen,
I don't understand why af_cancelImageRequest won't do what you want. That's how you cancel an image request on a UIImageView. All the request receipt logic is handled internally in the UIImageView extension.
I'd recommend you take a look at the example app since it does exactly what you're trying to do. Most likely you need to implement prepareForReuse on your image cell.
    override func prepareForReuse() {
        super.prepareForReuse()

        imageView.af_cancelImageRequest()
        imageView.layer.removeAllAnimations()
        imageView.image = nil
    }

In the future, I'd recommend opening a question on Stack Overflow for questions like this. We use our GitHub project for bug reports and feature requests.
Best of luck! 🍻

From our Contribution Guidelines
Asking Questions
We don't use GitHub as a support forum. For any usage questions that are not specific to the project itself, please ask on Stack Overflow instead. By doing so, you'll be more likely to quickly solve your problem, and you'll allow anyone else with the same question to find the answer. This also allows maintainers to focus on improving the project for others.

Thanks ! i will open a question there right now :)
BTW: i will attach my question link …  http://stackoverflow.com/questions/39437043/cancel-image-download-with-alamofireimage http://stackoverflow.com/questions/39437043/cancel-image-download-with-alamofireimage

Magen Yadid | iOS Development Team Leader
(m) +972-52-4235656 | Skype: magen_yadid
OnO Apps - a+ people. a+ mobile. | onoapps.com http://onoapps.com/

On 11 Sep 2016, at 2:31 PM, Christian Noon<EMAIL_ADDRESS>wrote:
Hi @magen https://github.com/magen,
I don't understand why af_cancelImageRequest won't do what you want. That's how you cancel an image request on a UIImageView. All the request receipt logic is handled internally in the UIImageView extension.
I'd recommend you take a look at the example app https://github.com/Alamofire/AlamofireImage/blob/master/Example/ImageCell.swift#L71-L77 since it does exactly what you're trying to do. Most likely you need to implement prepareForReuse on your image cell.
override func prepareForReuse() {
    super.prepareForReuse()

    imageView.af_cancelImageRequest()
    imageView.layer.removeAllAnimations()
    imageView.image = nil
}

In the future, I'd recommend opening a question on Stack Overflow https://stackoverflow.com/ for questions like this. We use our GitHub project for bug reports and feature requests.
Best of luck! 🍻
From our Contribution Guidelines https://github.com/Alamofire/Alamofire/blob/master/CONTRIBUTING.md
Asking Questions
We don't use GitHub as a support forum. For any usage questions that are not specific to the project itself, please ask on Stack Overflow https://stackoverflow.com/ instead. By doing so, you'll be more likely to quickly solve your problem, and you'll allow anyone else with the same question to find the answer. This also allows maintainers to focus on improving the project for others.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/Alamofire/AlamofireImage/issues/178#issuecomment-246175555, or mute the thread https://github.com/notifications/unsubscribe-auth/ACZ3A92baLdEQuoUlRmLeLmtAV6_jps1ks5qo-Z6gaJpZM4J59J4.


How serious treat Microsoft this project?

Open speaking here. If I compare this project with other open source initiatives in speed of improvements  , reactions on issues and adoption of open pull-requests, I don't feel me comfortable. Don't get me wrong, I appreciate what the Microsoft guys have achieved. Especially the Clang/Objective-C integration in Visual Studio is impressive, but for us is crucial to understand if it makes sense to invest in this approach to port our customer apps to Windows 10 or if we have to go a different way. Especially under the impression that a lot of APIs of the iOS Framework are still missing.

My guess is: dead serious :laughing: Sorry I just had to...

@volkrass This is a great question. The core WinObjC team is smaller than I think many people suspect so some fixes/updates take a bit longer than might be expected, but we are working hard on everything.
Having said that, we are growing the dev team pretty aggressively. So, in a few weeks, you should start to see almost all aspects of the project start to move forward more quickly.

Thanks for this answer @s5msft and thans for this quesiton @volkrass !!!
I'm also really interested by this project (I've a lot of iOS apps to port) but there are 2 little remaining bugs (eg. popViewController doesn't work) that prevent me to finish.
And I was wondering if there was a dedicated team in M$ for that or not.
Now, I know. There is such a team, but a little one.
Hope you'll hire quickly some devs.
Where could we apply? :)

@s5msft Thanks a lot for your fair answer. I'm pretty sure Microsoft have the resources & money for an adequate staffing. Looking forward to see your progress in next few weeks. This project would be helpful for us.

@s5msft I am sorry, but what was promised in the project Islandwood session video and what was finally presented are two completely different things. The project is in a pitiful state, with a quasy archaic iOS 6 level API, and even as that, so much of it is implemented as stubs or, worse, in a very naive and incorrect manner. This project is at least two years away from being able to call it remotely ready, by which time it would be five years of API behind the times. Especially in UIKit and networking, there has been so much advancement in the API, with a lot of the older API being deprecated for good reason. It seems to me a shame to set such an old baseline as your goal, when a lot of that would no longer be used in modern iOS projects.
I am sorry, but to me this project seems like a PR stunt by Microsoft. It is not taken seriously. You cannot have such an undertaking with "smaller than I think many people suspect" team. At least with the Android port, you had some baseline of implementation. Here the state of affairs is sad.

@LeoNatan I think this is part of the point of the project being open-source.

@ash-rain What is that? Letting the community sort it out by themselves? I think you are missing the point of the project. It was supposed to let iOS software developers take an existing project and, with minimal effort, port it to Windows Mobile, which is in dire need of software. But the Windows Mobile market is still miniscule. So what incentive do people have to help with this project? Academic or fun? Sure, I'll grant you that. But how many are there that know iOS and Windows development well enough to be able to or willing to properly support a project like this? If Microsoft was serious about it, it should have allocated adequate resources to move it forward properly.

@LeoNatan I get your point. It's neither black nor white. I think it's an effort from Microsoft to contribute to open-source software and save some money while doing so. I respect that as both developer enthusiast and a guy that makes money with coding.
I'm not defending anyone, I also think Microsoft should put some more manpower into this but I also admire what the guys have done so far. I take this opportunity to learn more about iOS and contribute to the project. You don't have to do it but you should put more effort into understanding the open-source status of the project and mostly why it is the way it is, if you intend to rely on it sometime in the near future.
Cheers.

I think MS had already put "adequate" effort in this project, considering the priority of the whole WM platform. They seemed to have more interest in push Office to the other platforms than bring other apps back.
I'm a lumia user, so I really really hope the prosperity of WM and more apps. But personally, I don't encourage any developer waste his time on this platform until MS take it seriously.

reminiscent of other microsoft open source projects .. lets see

@LeoNatan if i look at https://github.com/Microsoft/WinObjC/graphs/contributors i see 25 contributors but basically only 2-4 main committers and thus limited amount of changes (but i would assume the subject matter to be more difficult than eg a javascript library).
If this project is really important to microsoft, i would assume it to be more important to them as e.g angular-material would be to google (a subproject of a project). Right now they arent there, judging by the commits etc, but at least they are involved. so lets give them constructive feedback that actually improves the situation and focus on getting real apps to work with proper code-sharing etc.
in the long term i would assume making the entire app just recompilable is a fools errant (running behind the entire time). I would rather want them to make it as recompilable as possible to enable code-sharing between the ios and the 'ported' windows app and then adjust only the most important ui parts and backend services where needed. That would mean proper C library support etc of course, but i think they are already getting there (as far as i know). Not perfect but only real IOS devs with real big and small apps can answer this definitively.

@matthiasg Not even close. API is still at iOS 6 level. Some 7 API was stubbed out, but not usable. Meanwhile iOS 8 & 9 SDK includes some of the most major changes to UI, layout, presentation, network, etc. No e can be found here. And Apple is not standing still. By the time some iOS 7 SDK API is implemented, it will be even further away.

case and point for @LeoNatan : https://github.com/Microsoft/WinObjC/blob/683f6d6f225596d6cbfc16e518635d34a32bf6dc/Frameworks/Foundation/NSJSONSerialization.mm
It's hard to believe there are many, non-hello world, iOS apps that don't use JSON to some degree, and NSJSONSerialization has been the defacto library for several iOS version.

@LeoNatan however, you have to acknowledge that they have done a great work so far, and the biggest part is from iPhone SDK 1 until iOS SDK 6. If they manage to finish this iOS 6 SDK until mid 2016, I think it is possible to finish iOS SDK 7 by the end of the year.

@jpros What you say is very inaccurate. These old systems and their APIs are mostly deprecated or changed completely. Sure, a lot of Foundation and Core Foundation have their foundations (pun intended) in OS X and NextStep even. But the UI and networking have changed so much, that implementing 7 and below seems almost counter productive at this point.

@LeoNatan that was my point .. it seems they are not really interested in it sadly. quite sad for them to start with such an old api.
what is disappointing is that they demonstrated and heavily implied something else in the demos.

@LeoNatan Indeed the networking and UI changed a lot in SDK 7, at least for us developers. However I think the basis underground are still the same (at least on the networking part).
Anyway, we can point to them what are the priorities for a basic application, keep testing and providing feedback.


Firebase Cloud Messaging with CRA

I've tried to tweak everything to make FCM work with CRA but the furthest I got was to receive a "this site has been updated in the background" message when sending push notifications.
Has anyone figured out how to do it?

Hi there! I'm sorry to say, but we don't have enough time to help with general-purpose questions.
You can find a wealth of information and people willing to help in numerous React Communities.
Thanks!


[enhancement] Ensure icons adjust to larger screen

Notice how our side-menu is looking on larger screen. Can we do anything to make icons sharpers on large screen.

Fixed issue.


App provides 'company name invalid or missing' error on very large business name and also does not underline field in red for the error.

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open the app
Open settings
Open workspaces
Open any workspace
Open connect bank account
Click on connect manually
Fill in step 1 details and continue, eg details: Routing number = 210021002, Account number = 1234
In step 2, fill in all other details and in company name, fill in very large name
Click on continue

Expected Result:
App should underline company name field in red as it does for all the fields in case or error OR app should have proportionate limit for number of letters for that field to avoid that issue totally
Actual Result:
App does not underline company name field in red when very large name triggers 'company name invalid or missing' error
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android / native
[x] Android / Chrome
[x] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/43996225/929ff44d-d3ea-42e7-a2e6-730fc82fb7ab

Expensify/Expensify Issue URL:
Issue reported by: @dhanashree-sawant
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1683631707456789
View all open jobs on GitHub

Proposal
Please re-state the problem that we are trying to solve in this issue.
App provides 'company name invalid or missing' error on very large business name and also does not underline field in red for the error.
What is the root cause of that problem?
The root cause of this problem is the inconsistency of the validation for company name field between client and server.
While in the client we only have validation for empty company name, when we enter very long name, server will return error while it's still passed the validation on the client.
What changes do you think we should make in order to solve the problem?
Update the validation for companyName that matches the server validation for this field inside validate function of CompanyStep component.
    validate(values) {
        const errors = {};

        if (!values.companyName && !isValidCompanyNameThatMatchServerValidation(values.companyName)) {
            errors.companyName = this.props.translate('bankAccount.error.companyName');
        }

isValidCompanyNameThatMatchServerValidation is the function that includes the validations that matches the validation from server.
What alternative solutions did you explore? (Optional)
None

This is not a bug. We display server side errors above the submit button, per this.


Custom selectors - which pattern to follow?

For an enterprise org, I'm evaluating retrofitting some of the application with fflib-apex-common. While the SobjectDomain class was easily understood how to exploit, I'm a bit more puzzled about my various custom selector methods in my XxxSelector classes.
Specifically, a selector method that gets by ID both parent fields and child relationships (e.g. getOpposByIdWithAccountsAndProducts(..)
Approach 1 (Stitch together QueryFactories) - used in fflib-apex-common-samplecode/fflib-sample-code/src/classes/OpportunitiesSelector.cls
public List<Opportunity> selectByIdWithProducts(Set<ID> idSet)
{
	fflib_QueryFactory opportunitiesQueryFactory = newQueryFactory();

	fflib_QueryFactory lineItemsQueryFactory =
		new OpportunityLineItemsSelector().
			addQueryFactorySubselect(opportunitiesQueryFactory);

	new PricebookEntriesSelector().
		configureQueryFactoryFields(lineItemsQueryFactory, 'PricebookEntry');
	new ProductsSelector().
		configureQueryFactoryFields(lineItemsQueryFactory, 'PricebookEntry.Product2');
	new PricebooksSelector().
		configureQueryFactoryFields(lineItemsQueryFactory, 'PricebookEntry.Pricebook2');

	return (List<Opportunity>) Database.query(
		opportunitiesQueryFactory.setCondition('id in :idSet').toSOQL());
}

Approach 2 (something that looks like SOQL) - used in example code from the Force.com Enterpise Architecture book (admittedly a different  application domain)
public List<Race__c> selectByIdWithContestants(Set<Id> raceIds)
{
	assertIsAccessible();

	ContestantsSelector contestantSelector = new ContestantsSelector();
	contestantSelector.assertIsAccessible();

	return (List<Race__c>) Database.query(
		String.format(
				'select {0}, ' +
				  '(select {1} ' +
				     'from Contestants__r order by {2})' +
				  'from {3} ' +
				  'where id in :raceIds ' +
				  'order by {4}',
			new List<String>{
				getFieldListString(),
				contestantSelector.getFieldListString(),
				contestantSelector.getOrderBy(),
				getSObjectName(),
				getOrderBy()
			}));
}

If we adopt approach 2, the author of a custom selector method doesn't need to know anything about any queryFactory methods and the resulting code looks "transparent" as to its purpose and correctness by inspection.
But I have this nagging feeling that the framework in fflib-apex-common wants me to use the xxxQueryFactory(..) methods on fflib_SObjectSelector to construct a query that accesses parent fields, target object fields, and children fields.
The question is why? Or can I ignore that path?

The trouble with Approach 2 is you're handcranking Strings, rather than using lovely compile-time validated object oriented code. On the other hand, you could argue that QueryFactory adds runtime performance overhead and complexity. So it comes down to personal preference.
Here's Approach 2 scenario rewritten with query factory. It's easy to see the intent of the code. Say you want to change it later to select an extra field. Just add a .selectField('TutherField__c') in. You don't need to worry about adding ', TutherField__c', and you don't get punctuation-only differences like that preceding comma.
fflib_QueryFactory qfRaces = newQueryFactory()
    .setCondition('id in :raceIds');
    .addOrdering(
        Race__c.Name,
        fflib_QueryFactory.SortOrder.ASCENDING,
        true);

qfRaces
    .subselectQuery('Contestants__r')
    .selectFields(contestantSelector.getSObjectFieldList())
    .addOrdering(
        Contestant__c.Name,
        fflib_QueryFactory.SortOrder.ASCENDING,
        true);

List<Race__c> races = Database.query(qfRaces.toSoql());

frup42 - I agree, I like the fluent pattern.
fflib_QueryFactory qfOpportunities = newQueryFactory()
.setCondition('id in :oppoIds');
.addOrdering(
Opportunity.Name,
fflib_QueryFactory.SortOrder.ASCENDING,
true);
qfOpportunities
.subselectQuery('OpportunityLineItems`)
.selectFields(new OpportunityLineItemSelector().getSObjectFieldList());
(1) What is not so obvious on inspection is that  .subselectQuery(..) actually creates a new queryFactory for OpportunityLineItems bound to the queryFactory for Opportunities and such new queryFactory you can subsequently configure with more fluent methods and
(2) there doesn't seem to be an easy way to directly use QueryFactory methods to get all of the PriceBookEntry lookup fields on OpportunityLineItem without using the configureXXX methods on fflib_SobjectSelector. That is, one has to resort to both fflib_QueryFactory methods and fflib_SObjectSelector methods to configure the queryFactory.
The more I work with this, the more I understand but the learning curve was steep.

@cropredy thanks so much for sharing your experience in learning this stuff. Is there some tips or suggestions you could make to help improve the docs to make the learning curve less steep?

Andy:
First of all, without the book "Force.com Enterprise Architecture" I don't think I would have even started on the retrofit task in my enterprise org.  Since the book goes through the motivations for the patterns and layers, it was invaluable. As you well know, QueryFactory came too late for the first (and I think, only) edition so the clash in examples between the Races/Contestants/etc examples and the ones in fflib-apex-common-samplecode threw me for a loop when I got to the selector layer.
OK, now for some specific comments:
Domain Layer -- in some/many respects, this is where one goes to introduce a 'trigger framework' as espoused widely in the developer forums and SFSE.  It also is the place to go to have methods specific to an sObject. It was easy to understand as it introduces events familiar to every trigger developer - one simply implements the onXXX methods as needed
HOWEVER, when one decides to introduce the domain layer and its binding to Apex triggers, the first questions I asked myself were:
a) what tools does the SObjectDomain.cls have to help one avoid trigger recursion?
b) inner class TriggerEvent and related methods aren't documented in the source file, only in your blog from guest contributor Chris Mail . I think this is the answer to a) but it wasn't super clear.
c) there is a reference in a comment in the doc to ITriggerStateful (line 292) but such interface I could not find - this led to confusion, especially as it is one of the rare places where the word 'recursion' appears.
Selector layer -- I couldn't agree more of the need to centralize queries and leverage common field lists.  Avoiding the missing field error at runtime is something we all can agree on.
As you know, the book constructs SOQL queries by fleshing out via String.format(..) upon a query string 'template' populated from calls to various selector methods to get fields or order bys.  This was clear and, to someone looking at the code, clearly shows what is being queried (parent relationships, child relationships, where clause, etc.)
But now, the code base has evolved into using QueryFactory methods to construct the query. This construction process involves calling on the selector methods to provide fields.  The fluent pattern is a lovely pattern to use but only if each method is clear to its intent and is easy to use.
Here is where it became mind-bending
Taking the classic SFDC query on Opportunity and Products such as
select id, close date, account.name, account.website,
  (select id, unitprice, pricebookEntry.Pricebook.Name, pricebookEntry.product2.productCode
     from OpportunityLineItems order by ...)
 from Opportunity where ...

You have such an example in fflib-apex-common-samplecode within OpportunitiesSelector.cls but it is a mish-mash of fflib_SobjectSelector methods to associate subqueries to the main query (the configureXXX methods) and some fflib_QueryFactory methods.
I would have liked to see the "classic example" above done entirely using fluent fflib_QueryFactory methods with no fflib_SObjectSelector methods being involved in attaching subqueries to the main query.
To make things more readable by inspection, the fluent fflib_QueryFactory methods should, when read on the page, look like they are building the SOQL query starting from the main select, lookup selects, subqueries, where clause, orderby, and limit. Arguments to these fluent methods can come from selector methods. But the selector methods, if they build structure, get confusing.
I want to pound out selector methods just like I would writing native Apex SOQL, but the methods I use in the fluent pattern have to match in sequence the way a classic APEX SOQL query is written and I shouldn't have to think about the 'hidden' behavior of selector methods that affect the relationship queries within my SOQL.
In the example below, and I'm making this up here and probably there is a better way but I was kind of looking for something fluent but structured in the same sequence as the query you would write 'normally'.
fflib_QueryFactory oppoQf =
 newQueryFactory()  // use default getSobjectFields for OpportunitySelector
   .selectFields('Account',new AccountSelector().getSObjectFields()) // parent Account fields
   .subSelectQueries(new List<QueryFactory> { // list of subqueries, each configured fluently
       new OpportunityLineItemSelector().newQueryFactory(false)
         .selectFields(new List<String>{'UnitPrice','ListPrice'})
         .from('OpportunityLineItems') // somehow, the relationship name has to be specified
         .selectFields('PricebookEntry.Product2',new Product2Selector().getSobjectFields()
         .selectFields('PricebookEntry.Pricebook2',new Pricebook2Selector().getSobjectFields()
     }
    .setCondition('ID in :idSet')
    .addOrdering(...);

return Database.query(oppoQf.toSoql());
Even if the above isn't a good idea for some reason, at least an update of the examples to use solely query factory methods for the Opportunities with parent account and children OLI (and lookups from the children) would be immensely helpful.
Service layer - I haven't got this far yet but, at least in the book, this was very understandable. The only important annotation I made in the book was about the UoW pattern
Specifically, the method that instantiates the UoW should be the only ones that commit the UoW as otherwise you lose track of the span of the UoW. Put another way, if a UoW is passed to a method outside of the class - especially to another layer, that method had better not commit the UoW unless you want to totally confuse yourself.
Final Notes (for now)
It would be great to provide Eclipse and Mavensmate templates for developer-written extensions to the fflib_SObjectDomain, fflib_SObjectSelector, fflib_SObjectService classes. Such templates would remind the developer of methods they had to override or provide, and what important variables or services the base class provides. I even put in notes to myself to explain the sequence of steps from *.trigger to actually getting to the first onValidate call as there is a transition from Trigger -> SobjectDomain static method -> SObjectDomain extension Constructor class that provides an extension instance back to the super class that then calls the onXXX methods.  For someone retrofitting an existing org, these notes were needed to remind me of what was happening and what was in scope when.
One example of this was the Records variable in fflib_SobjectDomain which essentially is Trigger.new (or Trigger.old in the delete use case). This was such a generic name that I had to read the examples multiple times to realize where Trigger.new was (and that I should refer to those sobjects as simply this.Records. I also was confused by the existingRecords name pased to the onBeforeUpdate, onValidate, .. methods.  Again, I was looking for something with the word old in the name as existingRecords was ambiguous. Trigger.new records in an before/after trigger event are "existing" as they can be manipulated (yes, they aren't committed but you don't get a NPE with references to Trigger.new. oldRecords would have been more understandable.
Thanks for listening. I am in awe of the contributions you have made and have learned immensely - especially as I did not come to this with formal training in computer science. But I've seen and worked on lots of SFDC Apex orgs and the absence of good design patterns has been apparent.  I'd like to 'up my game' and exploit such best practices and evangelize to others in my orgs as well.

@cropredy thanks taking the time to make this detailed response, most useful!
RE: QueryFactory evolution, yeah, its a shame that missed the cut, a second edition of the book would update this of course. I would also include the formal formal mocking and dependency injection facilities we now see via the fflib_Application class. Something that is really just touched on lightly in the book. You can read more on that in the meantime here and here.
RE: Domain layer, yeah the feature called Domain Trigger State actually provides recursion support. In hindsight i think it could have been named better for sure.
RE: Selector layer, i totally agree and can see this more clearly now, thanks to your example (very useful btw!). I'm going to lift this part of your response out and make separate enhancement to consider a way to improve the API. Thanks! 👍
RE: Service layer, a good summary, useful, thanks!
RE: Final notes, i'll look into Eclipse templates, i did publish some MavensMates template here. I would be great if you could contribute to the templates here, i'd be happy to review the PR. In general though i think what your saying is you would value a blog / article on 'Apex Triggers seen through the eyes of Domain Layer' or something like this?
I'll certainly be retaining this thread of discussion for any further works / updates to related materials, thanks again for sharing! Also if we end up doing a DF16 session this is also good pointers on things to clarify (cc @frup42).

Andy --
I'm glad I can be helpful. In response to the above
Domain Trigger State - Yes, I had read this but it seemed to be focused on preserving state between the before and after trigger events so one could avoid requerying.  What was not clear to me at all was how one handled a use case like:
After trigger on `master__c` updates `child__c` objects that
participate in a RSF or DLRS back to `master__c` and hence recursion

Another use case is preventing irrelevant, limit-consuming, operations within a domain class.  These examples tend to come up in use cases where a service layer is manipulating domain objects in a constrained use case and other, trigger-invoked domain activities can be safely shut off (to conserve limits)
Blog
This all lends support / ideas for the blog entry you proposed above:

How the Domain Layer prevents/provides tools for (w/ example) trigger recursion due to "chained" DML events
How to shut off limit-consuming Domain processing that otherwise get auto-executed just because DML will invoke triggers
Why the Domain Layer avoids / requires additional static variable control for recursion management
Why the Domain Layer ensures that even anonymous apex can successfully request DML on more than 200 records within a given transaction without worry that records 201+ won't be processed (subject to other governor limits of course like 10000 DML per transaction)

Selector layer
Yep - the more the QueryFactory fluent pattern can resemble assembly/specification of a typical SOQL:

Base object fields
Parent(s) object fields
Subqueries (and their parent(s) object fields/orderby/where/limit
Base object where clause
Base object order by and limits

in that order, the easier it is to use and understand


Support debug/verbose mode

As per https://trello.com/c/osZqPWKz/107-support-debug-verbose-mode
Support for:

> antigen bundle zsh-users/zsh-syntax-highlighting --debug
Gonna install 'https://github.com/zsh-users/zsh-syntax-highlighting.git'...
Clone OK: '$ADOTDIR/zsh-users/zsh-syntax-highlighting'
Determining entry point...
Found entry point: '$ADOTDIR/zsh-users/zsh-syntax-highlighting/zsh-syntax-highlighting.plugin.zsh' using dot-plugin strategy.
No entries found to add to PATH. Not updated.
No entries found to add to fpath. Not updated.
Record entry: 'https://github.com/zsh-users/zsh-syntax-highlighting.git|master / plugin true'

Support --debug and --dry-run.

Should be fixed with #529. Maybe separated/extracted from that PR if it further delays deploying.


Type annotations for tf dtypes

These changes allow TensorFlow dtypes to have their own types by defining Python dtype classes for all tf dtypes. This will allow us to type annotate Tensors and dtypes provided as arguments to functions.
Examples:
We can use this to annotate function arguments:
def foo(dt: dtypes.Float32) # dt is expected to be tf.float32

def foo(dt: tf.Tensor[dtypes.Float32]) # dt is expected to be a Tensor with dtype=tf.float32

Before: The type of tf.bool, tf.int16, tf.string, etc would be “DType” which meant it would not be possible to differentiate dtypes based on their types.
Changes:

3b1c93b - create classes for each TF dtype to extend DType base class
e2931cc - add stub file to give each TF dtype their respective type
0c1aed9 - annotations for dtype parameter for tf.saturate_cast
2292cee & d7f5e05 - type decorators
cd36697 - annotations for dtype parameter for tf.constant

@rahul-kamat Can you please address Ubuntu Sanity errors? Thanks!

@yashk2810 FYI

@gbaned could you help get the import/copybara bit unstuck?

This should be ready to merge.

@rahul-kamat Can you please resolve conflicts? Thanks!

It has been 15 days with no activity and the awaiting response label was assigned. Is this PR still valid? Assigning the stalled label. Please comment to reassure me that this is still being worked on.

The PR is still valid, but we've been delayed on the integration.

I'm going to go ahead and close this PR, because it seems to have stalled. If you're still interested in pursing this (and responding to my comments), please feel free to reopen!


OTA redesign discussion (once again)

There are 2 OTA proposals, so I guess there's some interest in changing the OTA design. As discussed with some of you, MQTT is not meant to handle RPC style communication. The current implementation does RPC.
Please understand that the v2.0.0 is not yet final, so it's "legit" to change the way OTA works before final release.
Here are the choices:
1. As @brodtm proposed (simplified a bit, see #344):

The OTA entity stores the firmware retained to a global homie-esp8266 "bucket" topic. Say homie/$esp8266_firmwares/<fw checksum>
The OTA entity sends retained to the device $implementation/ota/target its target firmware checksum
The ESP8266 checks that the target checksum is different than the current one; if so, subscribe to homie/$esp8266_firmwares/<fw checksum> and flash the firmware

Benefits

@brodtm: The advantage of this approach is that the mqtt broker does not have to store a copy of the OTA binary file (about 300-400KB) for each device that requires an update, it only needs to hold a single copy.

Drawbacks

As firmwares are sent as retained, firmwares (~350kB) are stored on the broker.
It takes two messages to actually flash a firmware (three if we want to cleanup the firmware, in case we want a punctual OTA for a single device)

2. As @boneskull proposed (modified a bit, see #325):

The OTA entity sends retained to the device $implementation/ota/firmware/<fw checksum> its target firmware checksum
The ESP8266 checks that the checksum is different than the current on; if so, flash the firmware that is actually the payload of the message

Benefits
One message to flash a firmware (two if we want to cleanup the firmware after the OTA)
Drawbacks

As firmwares are sent as retained, firmwares (~350kB) are stored on the broker for each device, even if the firmware if the same

3. Currently (simplified):

The OTA entity publishes as retained to the device the latest available firmware MD5 to $implementation/ota/checksum
If checksum is not the same, the ESP8266 asks the OTA entity to publish the firmware
The OTA entity publishes the firmware to $implementation/ota/firmware, and the firmware updates

Benefits
No need to store the firmware beforehand on the broker.
Drawbacks

We do RPC
It takes two messages to actually flash a firmware

Comparison

1 (@brodtm)
2 (@boneskull)
Current

Does not do RPC
✅
✅
🔴

Does not pollute broker
🔴
🔴
✅

Simplicity (out of 3)
2
3
1

Thinking about it, I think I still prefer the current approach... But let me know what you think. You can of course propose something else.
If you don't want to be involved in the discussion (even if you do actually), please vote below:

I vote 1 (@brodtm)

I vote 2 (@boneskull)

I vote current

I vote for my own 🙂
Is firmware stored on a broker (or traveling multiple times over a LAN) really a concern? Because if the target is home automation, users are unlikely to have 100s or 1000s of devices to flash. Also, if we don't set the retain bit (and use, say, QoS 2 instead), it won't be stored any longer than it takes to send an ACK, right?

my use case: I was trying to automate OTA updates with Node-RED, which did not work well due to the RPC.

@boneskull Could you please use the +1 feature, it'll be easier to track. 😇
But without retained message, deep sleep devices won't be able to accept OTA. With retained messages, moreover, the device will receive ~350kB of useless data on each boot. Which is a lot considering the bandwidth of the ESP8266. Two solutions:

The ESP8266 can clean the firmware itself after a successful OTA is done
The OTA entity can clean the firmware after a successful OTA is done

That might sound like a good compromise, and I prefer the ESP8266 cleans the firmware approach. What about you?

Yes, good idea. Agree.
(Mobile interface doesn't have "reaction" functionality)

I was just thinking the same on gitter!

But--shouldn't QoS 2 work? It guarantees delivery so it'll hang on to the firmware until it's delivered regardless of whether the device is online. It won't resend that data once it's been received.

Doesn't the ESP disconnect properly on deep sleep and hence unsubscribes? In that case it won't receive the update.

@bertmelis depends if 'clean session' is set or not, I think

@boneskull are you sure about that? In QoS 2, the broker keeps the message until it is received once? Even if not retained?
I will try, but if it is the case that would be great!
@bertmelis It subscribes to the OTA topic on setup so maybe it would receive the OTA packet before the user code has a chance to enter into deep sleep... This has to be tested, but if not possible we'll explicitely state in the docs that calling deep sleep alters OTA functionality.

@boneskull true, on persistent connections (clean session flag to false), the broker keeps the messages untill delivered once as per OASIS standard. Could it interfere with the normal way of work?

I voted for approach 2 (@boneskull) assuming that some sort of clean-up is happening after flashing the device. I don't have concerns with the payload being (temporarily) stored on the broker, because I can't think of a situation where someone has more than say 3-5 devices of the exact same type at home which would accept the same firmware.
Compatibility with deep sleep is a must-have for me.

Alright, indeed the QoS 2 approach would work great here. One message to flash a firmware (no need to clean it as it will be delivered only once). Sounds great!

@bertmelis I think of one way it could cause an issue. If we keep a persistent session across firmwares, then we will potentially have stale subscriptions hanging around.
So, if we can ensure the persistent session is not retained after a firmware upgrade, we should be fine. I'm not sure of the best way to do this, but a dynamic client ID could be one of them.
An API should be exposed to reset the session (clean session after next restart or disconnect & reconnect w/ new session, then unsubscribe and re subscribe to any topics) in case of unforeseen issues.

Keep in mind that the ESP8266 must subscribe ar QoS 2 for this to work and the publishing client must do the same.

Which stale subs? Do you have an example?
There's also a problem with the AsyncMqttClient, it is not spec compliant when session is enabled (see the docs of the client, in the limitations page).
Maybe we should use the retained flag that we clean after instead of session, the result is the same anyway.

if esp8266 w firmware 1.0 subscribes to topic A then you upgrade to firmware 2.0 which subscribes to topic B instead, it will still be subscribed to A if the session is persisted

(subscribed to both)

So it'll have to unsubscribe just before disconnecting. Don't we have to unsubscribe to all topics if we use a persistent connection? Otherwise a lot of stale subscriptions are potentially left behind.

I'm still learning about how to do firmware updates how they're done today, but I've also been using Homie-OTA. I really like the simplicity of the web interface, but ultimately would want to get things automated via Node-RED. Not sure which of the three approaches listed here would be best for that.
Thinking out loud, ideally I'd like a way to control firmware updates as either push or pull. I could see a set of devices that I'd want to have automatically check for updated firmware and update themselves (aka automatic pull). There could be an option to have an adjustable update delay - that way if you had many devices they all wouldn't update at once. Some type of random prime number delay or a broadcast flag that tells the other devices to wait while a node is updating. A manual pull would require some type of interaction with a device to engage an update. For example, a critical device may not update until a scheduled maintenance window.
The other option, a push, would be triggered by the server. This would effectively force devices to update. The use case I'm thinking of would be for a security update - you'd want all the devices to update ASAP.
After writing this, I imagine much of this could be coded into the device firmware, or would have to be since there's no "server" to speak of. Unless you're using a setup like Homie-OTA or maybe Node-RED.
Really enjoying the Homie project! I've been using Particle devices, which are great, but I appreciate the Homie approach where everything is "in-house".

@boneskull @bertmelis to avoid this added complexity of stale subscriptions, and the fact that persistent sessions are not spec compliant on the async-mqtt-client (and will never be as we would have to store entire messages in memory...), let's go with the retained approach?
@raiderj the most straightforward way is the one we're going to implement (@boneskull's one).
I am not in favor of the "push and pull" approach. Polling would require some sort of RPC, and that's precisely what we're trying to avoid. I think another entity (server-side) should handle the OTA scheduling, and the devices should be dumb as it can, so they have a lighter workload to achieve.

I'll forward to it! Shall we have the ESP publish an empty message to clear the retained firmware after flashing?

@bertmelis it is already implemented on my side, and I refactored a lot of code so it is now cleaner. I'll soon push. 😉

I haven't been following this discussion in detail but I would be careful about any approach that depends on QOS 2 since some mqtt brokers and clients don't implement it.

Chiming in with a different subject concerning OTA. I'd like to hook into the OTA progress, like it is possible with ArduinoOTA.onProgress(...), to show the progress on an attached OLED display.
Would that be possible somehow?

@Nzbuu I've implemented the QoS1 retained approach, so no problem here.
@luebbe definitely! I'll add an OTA_PROGRESS event on which you'll be able to get the progress. 😉

A remark tough, as this is a breaking change, you need to upgrade your nodes with care, as you're unable to distinguish the different OTA-procedures based on the Homie-version.

Actually, that's why the v2 is not yet considered final and released as
such, because the API/procedures might still change.
2017-06-12 13:27 GMT+02:00 Bert Melis<EMAIL_ADDRESS>
A remark tough, as this is a breaking change, you need to upgrade your
nodes with care, as you're unable to distinguish the different
OTA-procedures based on the Homie-version.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/marvinroger/homie-esp8266/issues/346#issuecomment-307762880,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA8eNSo0rMOdu81Da_ANy764Pb5Qgq-Lks5sDSCLgaJpZM4NtYRn
.

@marvinroger That sounds nice!
Currently I have ArduinoOTA compiled in and Home OTA active, so I can do both 8-)


'alternates' variable from multilanguage plugin is not available in nunjucks anymore

Version
v1.16.1
Platform
Linux
What steps will reproduce the bug?
{{ alternates | dump }}
How often does it reproduce? Is there a required condition?
always
What is the expected behavior?
it should dump kv pairs of language codes to pages
What do you see instead?
nothing
Additional information
It worked until a few days ago. I suspect this commit introduced the issue:
https://github.com/lumeland/lume/commit/d692062dc237a1fa415cb1eafd4f4fe5bbbebf95

Yes, sorry. The breaking changes of the multilanguage plugin introduced in 1.16.0 includes also a change in the alternates object.
Now it's just an array of the page data objects. So you can do:
{% for alt in alternates %}
{{ alt.title }}
{% endfor %}

Sorry to bother you again, but this does not work for me. There's nothing in the alternates object, it seems.

I love lume and I am very grateful for your work
Thank you very much for your hard work!
Lume enable(d|s) me to make a good website (-- it's still a work-in-progress, though), and eased up the process by just the right margin.
Lume hits the perfect compromise between keeping control and simplification of chores -- and that's exactly, what makes it so great!
I just want to say, that I love lume!
Thank you so very, very much!

Hey @anick3
Thank you very much for your kind words! This comment made my day :)
If you want to share your opinion about Lume on any social network (twitter, mastodon, youtube, a blog, etc), please, let me know so I can include it in the testimonials section at lume.land. :)


Cannot read property getContacts of undefined

I feel like I must be doing something wrong here.
To import react-native-unified-contacts, at the top of the file, I have:
var Contacts = require('react-native-unified-contacts');

(which is copy/pasted straight out of the readme)
In the code, I run:
Contacts.getContacts( (err, contacts) => {

    if (err) {
        return reject(err);
    }

    resolve(contacts);
});

Running Contacts.getContacts throws the error at the bottom. It's as though Contacts is undefined and so the module isn't exported?
I've followed the other instructions in the README - adding the folder into the project in XCode, ensuring it's a top-level folder, npm install, etc. It's possible I did that wrong, but I checked twice.
Stacktrace:
Possible Unhandled Promise Rejection (id: 0):
Cannot read property 'getContacts' of undefined
TypeError: Cannot read property 'getContacts' of undefined
    at http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:84737:9
    at tryCallTwo (http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:25983:1)
    at doResolve (http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:26138:9)
    at new Promise (http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:26004:1)
    at InviteFriends.getContacts (http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:84735:8)
    at new InviteFriends (http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:84772:7)
    at ReactCompositeComponentWrapper._constructComponentWithoutOwner (http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:18187:19)
    at ReactCompositeComponentWrapper._constructComponent (http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:18169:13)
    at ReactCompositeComponentWrapper.mountComponent (http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:18081:15)
    at Object.mountComponent (http://localhost:8081/index.ios.bundle?platform=ios&dev=true&minify=false:16531:29)

This is running in the simulator on iOS 10 in XCode 8.

Hey @Jarred-Sumner. It might be an XCode 8 / Swift 2.3 3.0 issue.
I'll have a look tonight and ensure it's compatible.
Meanwhile, take a look at #7 and #13 to see if either of those are helpful. If they are, make sure to post your findings here.
Thanks.

I got it mostly working.
I ended up:

copying the code into the repo (vs adding a reference)
Enabling legacy swift
Changing the code for getting the label of the email/phone/address to
support the legacy version of swift

It felt pretty hacky though - would be great if it worked out of the box
(and ideally supported RNPM)
On Mon, Sep 19, 2016 at 8:25 AM Joshua Pinter<EMAIL_ADDRESS>wrote:

Hey @Jarred-Sumner https://github.com/Jarred-Sumner. It might be an
XCode 8 / Swift 2.3 3.0 issue.
I'll have a look tonight and ensure it's compatible.
Meanwhile, take a look at #7
https://github.com/joshuapinter/react-native-unified-contacts/issues/7
and #13
https://github.com/joshuapinter/react-native-unified-contacts/pull/13
to see if either of those are helpful. If they are, make sure to post your
findings here.
Thanks.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/joshuapinter/react-native-unified-contacts/issues/12#issuecomment-248025592,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AArTS4EpVYPgii0zSIHJnK4lQ0KVPFqaks5qrqlTgaJpZM4KAJIv
.

You bet. I'll get this updated tonight so it "Just Works".
RNPM works great for Obj-C libraries but doesn't know what to do with Swift libraries. I'm sure I can get it working with some manual RNPM instructions, though.
Stay tuned.

Hey guys, I can confirm this issue. Just updated to iOS 10/Xcode 8.

Hey Gents, spent the last couple days going through and updating to XCode 8 and Swift 3.
Even with their Swift Converter, Apple sure didn't make it easy.
I've pushed the latest to master and published version 1.0.0 to npm so I would recommend updating your package.json to use
"react-native-unified-contacts": "^1.0.0",

And then do a npm update react-native-unified-contacts.
Try out a build of your apps with this new version and let me know if you have any trouble. I'm going to close this issue for now.

I'm at a loss here, @joshuapinter . Still seeing this error after updating to 1.0.0. Here are some of the things I've tried and re-tried:

adding the folder into the project in XCode (top-level)
npm install
npm start -- --reset-cache

I'm on xcode 8.0, using swift 3.0
I'd really like to make this work but I feel like I'm stuck!

@jignamru Strange. Okay, let's get this working.
I tested with our existing apps, but I will try it with a fresh app now and see if I run into problems.
Stay tuned!
Josh

@jignamru Using a brand new sample app I ran into the same trouble. I think it's due to the newer version of React Native. I'll fix it and release a new update shortly.

@jignamru Okay, I was able to get it working without needing to update the library. Here's what I did:

Create a new app called ExampleApp:

$ react-native init ExampleApp

Go into that the new ExampleApp directory:

$ cd ExampleApp/

Install React Native Unified Contacts and save it to package.json:

$ npm install --save react-native-unified-contacts

Open up the ExampleApp in XCode:

$ open ios/ExampleApp.xcodeproj/

Takes a minute to index your new project.

Click on the top level Project:

Click on the + button in the bottom left and click "Add files..."

Navigate to ExampleApp/node_modules/react-native-unified-contacts/:

Click on RNUnifiedContacts directory and click Add:

Ensure RNUnifiedContacts is at the first level in my Project Structure:

Click on root level ExampleApp in the project structure:

Click on Build Settings tab:

Set the Use Legacy Swift Language Version to No.

Build the project:

This should be "Successful".

Add NSContactsUsageDescription key to Info.plist:

Note: After entering "NSContactsUsageDescription" and tabbing from the key field, it will be replaced with XCode's friendlier version.

Open up index.ios.js:

 $ open index.ios.js

Add the following code that Includes the react-native-unified-contacts library and gets all the Contacts:

var Contacts  = require('react-native-unified-contacts');

Contacts.getContacts( (error, contacts) =>  {
if (error) {
  console.error(error);
}
else {
  console.log(contacts);
}
});

Run the project:

This will take a little while to boot up the simulator if you haven't already got it running.

You'll see iOS ask you for access to Contacts. Click OK:

Use the Shake Gesture for the Simulator:

Click "Debug JS Remotely":

Go to the browser window where the remote debugger is attached and view the console, you'll see that all of the simulator's Contacts are there:

That should do it!
So try and replicate these steps and see if you can get it working. I'll be around tonight so post a reply and let me know how it goes.

Really appreciate your commitment to making this work, @joshuapinter. However, still a problem, and I noticed that I don't see what you see in step 12. This is what I see instead:

You know why that would be?

@jignamru Can you confirm that you've got the main target selected?

And you're in XCode 8?

Yes, Version 8.0 (8A218a)
I'm baffled by this. I remember having the problem in finding that setting in my older project. I'm going to try to reinstall xcode at this point since that's one thing I haven't done.

Have you tried creating a new project and following every step from https://github.com/joshuapinter/react-native-unified-contacts/issues/12#issuecomment-253066009?

@joshuapinter yes I did start from a new project.

@jignamru That's super strange. Yeah, maybe a reinstall will help. If you just skip that step and keep going what happens?

A reinstall didn't help my case. If I keep going, I get the same undefined error:

Tried searching for answers on Google but not seeing anything relevant. Unsure what I can try next. This is so strange!

There must be something we're missing with XCode. When you find out, please post what you find back here.

@jignamru Any update?

Still hunting for answers, @joshuapinter. I'm curious, do you have Swift 2.3 installed? I wonder if I'm not seeing the "swift legacy" option because I only have Swift 3 installed by updating to the latest xcode.
I tried looking into getting 2.3 installed but couldn't find good documentations out there...

@jignamru Not sure actually. I never intentionally installed it but maybe it was there with XCode 7.

So are you currently running this example on xcode 7 or 8?
On Wed, Oct 12, 2016, 9:18 PM Joshua Pinter<EMAIL_ADDRESS>wrote:

@jignamru https://github.com/jignamru Not sure actually. I never
intentionally installed it but maybe it was there with XCode 7.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/joshuapinter/react-native-unified-contacts/issues/12#issuecomment-253410627,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ALDQWteqh6_GXjMzW_kAZI03wGXBspvIks5qzbEigaJpZM4KAJIv
.

--
-Jigna

Xcode 8.

@Jarred-Sumner Hey Jarred, any chance you can do a quick test and see if all the steps work for you in https://github.com/joshuapinter/react-native-unified-contacts/issues/12#issuecomment-253066009 and let us know?

@joshuapinter: So another team member of mine gave this a shot and got the same results as me, with no option to select "use legacy swift" (both of us only have Swift 3.0 installed) and even after doing the rest of the steps, we are seeing the undefined error.
I tried finding a way to install an earlier version of swift, but without any success (Apple is not making it easy!) I suspect that if you remove any earlier installs of swift, you might see what we are seeing.
If you ever see and fix this, do let me know. You have a cool module but for now, I have to use another one that gets me results.
Thanks again for all your help!

Man, that's frustrating. Thanks for trying it out and letting me know. I'll reopen this issue and get it properly fixed up.

Hi @joshuapinter !
Just tried your module and ran into the same issue as @jignamru using xcode 8.1beta on an ios10.1 phone
:(

@bourgois This is ridiculous. I'm getting this fixed today. Did you happen to walk through all the steps in https://github.com/joshuapinter/react-native-unified-contacts/issues/12#issuecomment-253066009?

Yes I did :( but I am not starting from scratch. I am trying to use this in an existing RN project.
I also tried severals trick I found on SO about swift code inclusion within obj-c project with no luck...

Well, I’ve got it working in my project, so there IS a way. I'll just try and reverse engineer it. I won't be able to test against 8.1 beta but I'll see what's going on.
I wish I just wrote this in Obj-C from the get-go but I wanted to make use of the Swift niceties. I might still rewrite in Obj-C just so it plays nicely with React Native and rnpm, though.

Have same error on Xcode 8.1 (8B62).

@alexHlebnikov Working on a solution here. Are you able to try the steps in https://github.com/joshuapinter/react-native-unified-contacts/issues/12#issuecomment-253066009 and let me know how it goes?

I tried these steps, there is no Use Legacy Swift Language Version in my project Build Settings.

Hello All!
My apologies for the late reply to this but I was finally able to do some sleuthing this weekend and found a resolution to this issue. It helps that I was testing this out on a freshly formatted MacBook so I was actually running into the same problem all of you guys were having. And reproducibility is half the battle.
So, it all came down to a minor change in how the files are added to your Project in XCode. You can't add the directory RNUnifiedContacts, you have to add the three files inside of that directory instead.
See the updated Installation Instructions for what I mean.
It would be a terrific help to me if you guys could quickly test this out to see if it's working. I have a lot of updates I have planned for Unified Contacts so it would be great to solve this and not have to rewrite it in Obj-C.
Many thanks once again.

Hate to drag this bag up but I'm getting the same issues again after the latest update (Xcode 8.3) :(

@chrise86 No worries. Did you follow the install instructions to the letter?

I did, but it grumbled about the following:
Check dependencies

“Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly.

** BUILD FAILED **

The following build commands failed:
	Check dependencies

Which I tried, but there are looooads of changes that it failed to do automatically.

@chrise86 Damn. I wish Apple had better support for Swift but it's especially painful for third party libraries like this. Maybe the best bet is to convert this entirely to Obj-C. Not sure.
I'm headed out for the weekend but I'll be able to look at this after I'm back. Can you keep me posted on anything you try?

Sure thing!

I am having the same issue with xcode 9.  I am getting Contacts.getContacts is undefined and I cannot find any of the Swift settings.  Any ideas on how to fix this?

@artkulakow Sorry for the trouble. Did you follow the instructions for including the library? I'll try with XCode9 this weekend and see if I can diagnose the issue.


[ENG-691] Enables gitlab addon to access all gitlab projects with user membership

Purpose

Enable the GitLab addon to access all GitLab projects that the user is a member of. Previously, the addon was limited to GitLab projects that the user is the owner of.
Changes

Modifies the function that retrieves projects to use the general purpose project endpoint with a membership requirement as opposed to using the user/projects endpoint.
QA Notes

Testing the GitLab add on and ensuring that users are able to access GitLab projects they own as well as GitLab projects that they do not own but are members of would be beneficial.
I tested this locally using two separate GitLab accounts.
Documentation

N/A
Side Effects

N/A
Ticket

https://openscience.atlassian.net/browse/ENG-691

LGTM 🚢


[Global] The background of the page is not blurred when a pop-up appears.

Environment: Pixel 4XL, Android 10.0
Reproducible: always.
Build found: android.v1.0.505
Preconditions

The "Car" application is opened;
The user is logged in;
The "Ride Homepage" is opened.

Steps to reproduce

Tap "Add a ride";
Set any address into the "From" search box and press the "Confirm" button;
Tap the "Back" button;

Actual result
The background of the page is not blurred when a pop-up appears.
Expected result
The background of the page is blurred when a pop-up appears.
User story and test case links
E.g.: "User story #
Labels to be added
"Bug" ("bug"), Priority ("pri: low")

The decision was made to refuse to "blur" because of difficult realisation.


Release SubmitConsent

The final piece to cover the mandates API client functionality.
Followed the Java SDK where this method sends empty request body (https://github.com/TrueLayer/truelayer-java/blob/ddd1994d4225591f167c4194c11487c144d51de9/src/main/java/com/truelayer/java/payments/IPaymentsApi.java#L76), despite presence of the optional "captured" object in the body params as seen in the API reference docs (https://docs.truelayer.com/reference/submit-consent-mandate)
Also added mandateType argument to the RevokeMandate method, not to hardcode the sweeping auth scope.

Tests passed on the local machine against our sandbox environment:


Assign public IPs to EKS workers in private subnets.

I have issues
I created EKS cluster in private subnets, we also have discussed about this topic in several tickets, we agree to create EKS workers in private subnets only.
Now it's time to decide, should we keep the feature to assign public IP to EKS workers?
If it is not required any more, I will raise PR to remove this line directly. Otherwise, I have to update with a condition, which way you like?
resource "aws_launch_configuration" "workers" {
  name_prefix                 = "${var.cluster_name}-${lookup(var.worker_groups[count.index], "name", count.index)}"
-  associate_public_ip_address = "${lookup(var.worker_groups[count.index], "public_ip", lookup(var.workers_group_defaults, "public_ip"))}"
  security_groups             = ["${local.worker_security_group_id}"]
  iam_instance_profile        = "${aws_iam_instance_profile.workers.id}"
  image_id                    = "${lookup(var.worker_groups[count.index], "ami_id", data.aws_ami.eks_worker.id)}"
  instance_type               = "${lookup(var.worker_groups[count.index], "instance_type", lookup(var.workers_group_defaults, "instance_type"))}"

I'm submitting a...

[X] bug report
[X] feature request

What is the current behavior?
When create workers in private subnets, public IPs are assigned to these workers.
Are you able to fix this problem and submit a PR? Link here if you have already.
Yes, I will
Environment details

Affected module version: v1.1.0
OS: ubuntu
Terraform version: 0.11.7

Any other relevant info

Sorry for the delay here. Yep I also agree this should be configurable. Feel free to submit a PR with WIP in the title for this work: https://github.com/ozbillwang/terraform-aws-eks/commit/2173bbcfa926e48785c6ed6cd8dc935269f6a7c9
We're headed the right direction with that. If what you have is as good as terraform allows, that'd still be a fine addition.

Seems someone had implemented it with PR #18


app origin as option of popupLogin

If an app is deployed on a non-solid-server I need to specify it as trusted since NSS5.
If I login using popupLogin to solid.community with popupUri set to the popup.html on my dev NSS server, after login, it asks me to add that dev server to the trusted apps, instead of localhost or the domain of the deployed app.
If I specify the app location as callbackUri, solid.community asks me to add the app location as trusted app, but it also loads that app in the widget, which is probably the expected behavior. But I also couldn't figure out how to use callbackUri properly, as it seems to be undocumented.
So I envision a option appOrigin to tell the IDP wich Uri to add to trusted apps.

Ah right. It's better not to use the popup uri and instead have the user choose the issuer from your app.

Ha - I just ran across this in solid-file-client via solid-ide and filed https://github.com/jeff-zucker/solid-file-client/issues/72 only to come here.

@jaxoncreed: that's not the problem I's like to specify appOrigin not IDP, which does not need to be the same.


[Bug]: moving columnar table to tablespace is not supported

What's wrong?
H! We have two separate tablespaces: default(ssd with relatively small capacity for current data) and hdd (high capacity, historical data) and don't want to store columnar tables on ssd. But there is an error on moving columnar table:
alter table fact_events_1_2021 set tablespace hdd;
ОШИБКА:  columnar_relation_copy_data not implemented

Is there a way to move this data or some plans to implement this feature?

Thanks for the report. I believe tablespaces themselves should work but moving tables isn't supported yet.
The best I can suggest is to copy the table like so:
-- copy table to a new table
create table fact_events_1_2021_hdd (like fact_events_1_2021) using columnar tablespace hdd;
insert into fact_events_1_2021_copy select * from fact_events_1_2021;
-- swap the two table names
alter table fact_events_1_2021 rename to fact_events_1_2021_ssd;
alter table fact_events_1_2021_hdd rename to fact_events_1_2021;
-- when you are ready, drop the old table on the ssd.
drop table fact_events_1_2021_ssd;


Having --bind=:execute() in FZF_DEFAULT_OPTS causes fzf command bound to ^R in bash to misbehave

[x] I have read through the manual page (man fzf)
[x] I have the latest version of fzf
[x] I have searched through the existing issues

Info

OS

[x] Linux
[ ] Mac OS X
[ ] Windows
[ ] Etc.

Shell

[x] bash
[ ] zsh
[ ] fish

Problem / Steps to reproduce
Run FZF_DEFAULT_OPTS="--bind=ctrl-y:execute(:)"  in bash prompt and then press ^R (having sourced /usr/share/fzf/key-bindings.bash ofcourse).
All history lines get clumpsed in one line in fzf menu.

The command was not properly quoted.


Allow locale and time zone to be configured in settings.yml

Could these values defined in application.rb be defined in settings.yml instead?
I could do a PR.
BTW, I'm assuming its ok to raise feature request issues and then do a PR?

Yes, and yes, but since this is a feature request, please reword the issue title so that it reads like a request or a question, such as Allow locale and time zone to be configured in settings.yml. Otherwise, it sounds like locale and time zone can already be configured in settings.yml, and that the fact that they can be configured there is a bug.

Sure. I tend to name issues for features/stories as if they describe the desired state, as it were. Noted :)


docs: Update README.md

Codecov Report

Merging #12 (cbccbea) into main (07ab2fb) will increase coverage by 0.12%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main      #12      +/-   ##
==========================================
+ Coverage   26.92%   27.05%   +0.12%
==========================================
  Files           2        2
  Lines         780      780
==========================================
+ Hits          210      211       +1
+ Misses        526      525       -1
  Partials       44       44

Impacted Files
Coverage Δ

pkg/controller/vm_controller.go
25.13% <0.00%> (+0.26%)
: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 07ab2fb...cbccbea. Read the comment docs.


buildpack.yml is required

A short explanation of the proposed change:
Currently the README does not document that buildpack.yml is required, nor the minimum contents for this required file.

An explanation of the use cases your change solves
pack build on a project with a Gopkg.toml and Gopkg.lock file

[x] I have viewed signed and have submitted the Contributor License Agreement

Hey @drnic , thanks for the catch! I don't think it needs a Buildpack.yml, but in general, we are trying to standardize and formalize what the buildpack.yml format should and will be, and we should do a better job at being transparent in our docs about the need/help for it. Thanks for making the note, and we'll prioritize this at some point!