[Edge Transparent Gateway scenario]Send message using x509=true in connection string

I have set up transparent gateway with downstream device being authenticated to gateway using x509 auth mechanism.
My connection string in the downstream device code is as below:-
HostName={hostname};DeviceId={downstreamDeviceId};x509=true
The error is I get while instantiating the deviceclient is as below:-
Unexpected error Invalid Connection String - Invalid Key
Shutting down IoT Hub Client...
Traceback (most recent call last):
  File "./iotagent.py", line 84, in <module>
    main()
  File "./iotagent.py", line 73, in main
    loop.run_until_complete(dowork())
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 587, in run_until_complete
    return future.result()
  File "./iotagent.py", line 53, in dowork
    device_client = DeviceClient(registration_result, x509)
  File "/app/iotagent/device_client.py", line 21, in __init__
    server_verification_cert=root_ca_cert
  File "/usr/local/lib/python3.7/site-packages/azure/iot/device/aio/patch_documentation.py", line 85, in create_from_connection_string
    connection_string, **kwargs
  File "/usr/local/lib/python3.7/site-packages/azure/iot/device/iothub/abstract_clients.py", line 257, in create_from_connection_string
    connection_string = cs.ConnectionString(connection_string)
  File "/usr/local/lib/python3.7/site-packages/azure/iot/device/common/auth/connection_string.py", line 83, in __init__
    self._dict = _parse_connection_string(connection_string)
  File "/usr/local/lib/python3.7/site-packages/azure/iot/device/common/auth/connection_string.py", line 50, in _parse_connection_string
    raise ValueError("Invalid Connection String - Invalid Key")
ValueError: Invalid Connection String - Invalid Key

It seems as per this code, the key x509 is not supported in python sdk. Or am I missing something?

@amit12cool
Please use the .create_from_x509_certificate() factory method for the clients instead of .create_from_connection_string() when using X509 certificates. You can see an example of how to do so in this sample code

@cartertinney ok. Will I need to use the root_ca.key on downstream device ? As far as I know for transparent gateway scenario the downstream device only requires root_ca.pem file to connect to the gateway device

@amit12cool
I think what you're looking for is perhaps the server_verification_cert keyword argument, and provide the contents of the root_ca.pem.
As far as the GatewayHostName, that might be an issue - try without it, and if it it doesn't work, let me know.

I have used this
 self.device_client = IoTHubDeviceClient.create_from_x509_certificate(
                x509=x509,
                hostname=hostname,
                device_id=registration_result.registration_state.device_id,
                server_verification_cert=root_ca_cert
            )

And the error I get is below:-
ConnectionFailedError('Could not connect to IoTHub') caused by ConnectionFailedError(None)
Also, I have tested the connection of leaf device with gateway device using openssl command. Below is the output:-
CONNECTED(00000003)
Can't use SSL_get_servername
depth=2 CN = Veli Gateway Devices Root CA
verify return:1
depth=1 CN = Veli Gateway Devices Intermediate CA
verify return:1
depth=0 CN = amit-virtualbox
verify return:1
---
Certificate chain
 0 s:CN = amit-virtualbox
   i:CN = Veli Gateway Devices Intermediate CA
-----BEGIN CERTIFICATE-----
MIICPzCCAeWgAwIBAgIBADAKBggqhkjOPQQDAjAvMS0wKwYDVQQDEyRWZWxpIEdh
dGV3YXkgRGV2aWNlcyBJbnRlcm1lZGlhdGUgQ0EwHhcNMjIwMzE3MDQ1ODIxWhcN
MjIwNDE2MDQ1ODIxWjAaMRgwFgYDVQQDDA9hbWl0LXZpcnR1YWxib3gwggEiMA0G
CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC6rtyLrbVqcFeyyQBNNpcWl/LkbcOa
E7A1E2fjIQohESC9lirNkCf0ue8dbr6QojmL0UF1528PRzJMK3KwT2SnnhvZea/d
neQ4zTBfGDGs/feDEHtx4teO7RzU25hcYeDz6TUPUqGheWwPtXvC2SADW+0rRr4r
xPdaIrjLbmbF4Qtmg0vv7S8/SeAY3Y/VZoenWM1K4qXccPaOTK0vvwX7WvxU35P7
jbPMyNBB7F871CSjvMA0QGd8hdd2nZX+NYxIHzjmaPgvdh+9mtD6GiAJtEXhW06g
7joA8rMdz62Qcei+aWkGjz9TtF5NhWUuhxd2jOBaPS0xj+tkV9n1KGcVAgMBAAGj
PDA6MBMGA1UdJQQMMAoGCCsGAQUFBwMBMCMGA1UdEQQcMBqCB2VkZ2VodWKCD2Ft
aXQtdmlydHVhbGJveDAKBggqhkjOPQQDAgNIADBFAiEAzsDDrYFW5TE2byrYe+FU
aLNe8EJRBWhkHrfvn/Cwx3MCIC/5HlFVwOO4Q09k1HpmYFknhFCGiY2uvrwxUQQ3
O9EC
-----END CERTIFICATE-----
 1 s:CN = Veli Gateway Devices Intermediate CA
   i:CN = Veli Gateway Devices Root CA
-----BEGIN CERTIFICATE-----
MIIBvjCCAWOgAwIBAgIRAMuoMwh4s7LQROik0crmL9owCgYIKoZIzj0EAwIwJzEl
MCMGA1UEAxMcVmVsaSBHYXRld2F5IERldmljZXMgUm9vdCBDQTAgFw0yMjAzMTQw
ODEyMTRaGA8yMTIyMDIxODA4MTIxNFowLzEtMCsGA1UEAxMkVmVsaSBHYXRld2F5
IERldmljZXMgSW50ZXJtZWRpYXRlIENBMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcD
QgAEeqpUZEzOKA4ylSyG2WaeHQcNxGkVZkC9vvFJKgKNW2WnDAsGsGzSiSWHq3tg
mt4SUU/uj4Boq5SxhfiauPWUS6NmMGQwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB
/wQIMAYBAf8CAQAwHQYDVR0OBBYEFPCwQo7chhpc0oUBwsOkjgPtviYSMB8GA1Ud
IwQYMBaAFCqD8u3kUR5DJ84J5Q24R6hIxO/XMAoGCCqGSM49BAMCA0kAMEYCIQD0
XIya7XbLTYJNeyiimGnIL9Dld+1+OYMPreYX0UMF5wIhAOqCIMZfo3Wz+gKAC73b
ZeQlUbF+4qYMhYg7R83hdFKG
-----END CERTIFICATE-----
---
Server certificate
subject=CN = amit-virtualbox

issuer=CN = Veli Gateway Devices Intermediate CA

---
No client certificate CA names sent
Client Certificate Types: RSA sign, DSA sign, ECDSA sign
Requested Signature Algorithms: ECDSA+SHA256:ECDSA+SHA384:ECDSA+SHA512:Ed25519:Ed448:RSA-PSS+SHA256:RSA-PSS+SHA384:RSA-PSS+SHA512:RSA-PSS+SHA256:RSA-PSS+SHA384:RSA-PSS+SHA512:RSA+SHA256:RSA+SHA384:RSA+SHA512:ECDSA+SHA224:ECDSA+SHA1:RSA+SHA224:RSA+SHA1:DSA+SHA224:DSA+SHA1:DSA+SHA256:DSA+SHA384:DSA+SHA512
Shared Requested Signature Algorithms: ECDSA+SHA256:ECDSA+SHA384:ECDSA+SHA512:Ed25519:Ed448:RSA-PSS+SHA256:RSA-PSS+SHA384:RSA-PSS+SHA512:RSA-PSS+SHA256:RSA-PSS+SHA384:RSA-PSS+SHA512:RSA+SHA256:RSA+SHA384:RSA+SHA512:ECDSA+SHA224:RSA+SHA224:DSA+SHA224:DSA+SHA256:DSA+SHA384:DSA+SHA512
Peer signing digest: SHA256
Peer signature type: RSA-PSS
Server Temp Key: X25519, 253 bits
---
SSL handshake has read 1720 bytes and written 388 bytes
Verification: OK
---
New, TLSv1.2, Cipher is ECDHE-RSA-AES256-GCM-SHA384
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : ECDHE-RSA-AES256-GCM-SHA384
    Session-ID: 44BF78DA9455AB6C1C4C9F45E57506D3EE3E9DF6B7342D11F4A2A544875D5F4E
    Session-ID-ctx:
    Master-Key: 656BFF346448759485F03EE7477B9C842ED69EEE2AE97A906E0F8F2E930A59B7E3ADB9D00EFF81DA11DBDC154B09A9C6
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    TLS session ticket lifetime hint: 7200 (seconds)
    TLS session ticket:
    0000 - 99 57 cb 12 de f5 dd b7-b0 37 93 ab 02 59 94 aa   .W.......7...Y..
    0010 - 56 9e 0b f5 e6 bd 76 46-16 31 21 54 e8 54 49 ef   V.....vF.1!T.TI.
    0020 - ba 1d 01 c3 d5 0b 81 db-0c 96 73 b8 c9 0d f1 5e   ..........s....^
    0030 - 11 14 12 ed cb 94 aa 2e-a6 a7 93 1b 49 88 3f 80   ............I.?.
    0040 - 35 01 4e 44 07 9f 7e 1d-eb 42 85 65 0b 21 4d 66   5.ND..~..B.e.!Mf
    0050 - 20 5f d7 6e 8e e3 64 72-d2 50 7d 2f 15 b4 92 ea    _.n..dr.P}/....
    0060 - 50 8f 23 16 8b cf e3 86-fd cc fe 07 b6 69 bc f4   P.#..........i..
    0070 - b4 34 18 dc 85 21 54 af-21 13 21 6d a1 e6 53 35   .4...!T.!.!m..S5
    0080 - 9f aa 88 4b 25 45 d4 39-6b e2 12 ee 9a 72 24 c3   ...K%E.9k....r$.
    0090 - a1 42 43 b3 c3 80 35 38-2f bb 2a 1b c4 0e cd 96   .BC...58/.*.....

    Start Time:<PHONE_NUMBER>
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
    Extended master secret: yes
---

@amit12cool
A fix to provide support for gateway_hostname is implemented in PR #973. This will be part of our next release.

Fix has been checked in

@cartertinney  Thanks for the fix. Since I will be using the  method below and as per your PR review changes I see we can pass gateway_hostname param too. But can we not use the hostname param only to pass the gateway_hostname value? If not, then what needs to be passed in the hostname param? Please prvode an example.
And when is the release expected with this fix?
self.device_client = IoTHubDeviceClient.create_from_x509_certificate(
                x509=x509,
                hostname=hostname,
                device_id=registration_result.registration_state.device_id,
                server_verification_cert=root_ca_cert
            )

@amit12cool The hostname is the hostname of your IoTHub. Usually something like <your-hub-name>.azure-devices.net. You can find it on the Overview of your IoTHub on the Azure Portal

@cartertinney thanks mate. Any idea on next release as currently I'm blocked due to this issue.

@amit12cool
I'm gonna try to get 2.11.0 released as soon as possible. We've got a technical problem getting in the way of pushing out the release, otherwise it already would be out - working on fixing that now. Will update you as soon as it is available.

@amit12cool
Version 2.11.0 has been released. You may now use the gateway_hostname keyword in the .create_from_x509_certificate() method.

@cartertinney Thanks for the speedy release. I did the changes as below:-
requirements.txt  has below line
azure-iot-device==2.11.0
self.device_client = IoTHubDeviceClient.create_from_x509_certificate(
x509=x509,
hostname=,
device_id=registration_result.registration_state.device_id,
server_verification_cert=root_ca_cert,
gateway_hostname=
)
Unfortunately, Im still not able to connect and the error I get is below:-
Could not connect to IoTHub
Is it still trying to connect to IoT Hub?

@cartertinney I was able to resolve the issue by providing below container create options:
{
  "HostConfig": {
    "NetworkMode": "host"
  },
  "NetworkingConfig": {
    "EndpointsConfig": {
      "host": {}
    }
  }
}

PS:- I'm running my downstream device in docker container
Please let me know if above is the correct way to do this.
Now, I just want to check if the messages are going to the gateway only. Can you suggest a way by which I can verify this?

@amit12cool
Unfortunately, I have little insight beyond the scope of the Device SDK. This is a question better suited for someone on the team of the relevant service (IoTHub or Edge). I can try to reach out to them myself if you don't have a contact in that area.

Now, I just want to check if the messages are going to the gateway only. Can you suggest a way by which I can verify this?

Couple ways:

Tail the logs of edgeHub module and see output showing the downstream device connecting.
Setup Azure Monitor metrics monitoring for the IoT Edge device and check the built-in visualizations. See https://aka.ms/edgemon-docs

@amit12cool Please let us know if the above information helps you resolve the issue

Yes that helps. Thanks

@cartertinney  is it possible to send the IP address in gatewayhostname param instead of the hostname? I see connection error while sending the IP address.

@cartertinney any help on above?

@cartertinney any inputs?


.poll() crashes on CpuFuture in most basic use ...

adding a simple test setup
use futures_cpupool::CpuPool;

lazy_static! {
static ref CPU_POOL : CpuPool = Builder::new()
			.pool_size(20)
			.create();
}

#[test]
	fn simple_cpu_feature_poll() {
		let mut f = CPU_POOL.spawn(
			ok::<_,()>( 5 )
			.map(|v| v)
			.fuse()
		);

		f.poll();
	}

leads to
thread 'bounded_futures_queue::tests::simple_cpu_feature_poll' panicked at 'no Task is currently running', src/libcore/option.rs:823:4
stack backtrace:
   0:        0x10722ac53 - std::sys::imp::backtrace::tracing::imp::unwind_backtrace::hb2e4589b48ff3268
   1:        0x10722caa1 - std::panicking::default_hook::{{closure}}::h5febd04eb069ba4a
   2:        0x10722c70d - std::panicking::default_hook::hbdc079c4ecdaaf61
   3:        0x10722ec82 - std::panicking::rust_panic_with_hook::he5c8309538974404
   4:        0x10722eb64 - std::panicking::begin_panic_new::h6ebc5b5819365d9e
   5:        0x10722ea92 - std::panicking::begin_panic_fmt::h58b23d554103b953
   6:        0x10722e9fa - rust_begin_unwind
   7:        0x1072564f3 - core::panicking::panic_fmt::hb2cc2ea3b36a7d6b
   8:        0x10725655d - core::option::expect_failed::hf92abd6cd8a21f8c
   9:        0x1071a95b5 - <core::option::Option<T>>::expect::h8e46674857d4f935
  10:        0x1071b2efa - futures::task_impl::with::h807d77a7ad871ffc
  11:        0x1071b2fd3 - futures::task_impl::current::h13bb5641c8405b29
  12:        0x10711abfd - <futures::sync::oneshot::Inner<T>>::recv::h83a9314f13de8a8e
  13:        0x10715600b - <futures::sync::oneshot::Receiver<T> as futures::future::Future>::poll::hf23e56e79b888350
  14:        0x10715806f - <futures_cpupool::CpuFuture<T, E> as futures::future::Future>::poll::hb6de413e4109c69a
  15:        0x10715c8b3 - thrift_service::bounded_futures_queue::tests::simple_cpu_feature_poll::hd8ffb71dfd77c416
  16:        0x1071f5271 - <F as test::FnBox<T>>::call_box::h322568d773dbcd38
  17:        0x10722fddc - __rust_maybe_catch_panic
  18:        0x1071e45ba - std::sys_common::backtrace::__rust_begin_short_backtrace::hb3c75d488c8d37b3
  19:        0x1071e5337 - std::panicking::try::do_call::hdf54b51caff001ad
  20:        0x10722fddc - __rust_maybe_catch_panic
  21:        0x1071edfb3 - <F as alloc::boxed::FnBox<A>>::call_box::hf25926b8139a1dcf
  22:        0x10722bf5b - std::sys::imp::thread::Thread::new::thread_start::h3a95850d89644972
  23:     0x7fff9b54199c - _pthread_body
  24:     0x7fff9b541919 - _pthread_start
test bounded_futures_queue::tests::simple_cpu_feature_poll ... FAILED

You're not intended to call poll directly. That's called by the task executor. Try calling wait instead.

Ah yes here the panic message is correct in that you need to set up a Task or otherwise spawn the future if you intend to call poll, the poll documentation should have some more information as well.

Alex, I have no issue with poll() not "being supposed to call" but then I suggest to either remove it as
pub fn

or at minimum document what is the magic call necessary for it to work such as in case of CpuFuture.
I intended to do .forget() basically but all the documentation indicated that .poll() is just fine to call and get an Async::NotReady and so on ...
.forget() is asymmetric for CpuFuture and with that hard to "understand" or find.
I suggest to not just close this defect but give it a thought what the strategy is here so the API doesn't fall apart in non-orthogonality over time.
Overall, great package and vastly superior to normal threadpools since I can build async closures without fighting lifetimes of stuff excessively given the nice Source/Sink semantics, I'm using it now with .forget and that works well albeit I wished for more stats obtainable from the futures core rather than having my own atomic counters and fiddle with those. E.g. tasks completed, tasks executing, tasks waiting and such.
Thanks for the great work ...

Oh it's sort of subtle here in that poll is the building block for the entire crate. It's definitely intended to be called in some situations, but not others. Spawning a future (e.g. on a thread pool) is an example of where poll shouldn't be called, but if you're implementing a future (e.g. impl Future for MyType) then calling poll is totally normal.
If you're looking for a crate to spawn futures though I might also recommend taking a look at rayon, which is likely going to be more efficient (and powerful!) than futures-cpupool

I use rayon very heavily but it doesn't have an asynchronous threadpool (well, only on unstable and it has some many exclamation marks I stay away from it ;-) and even then it looks like it will struggle with lifetimes. Your  ok::<,>::(  myvalues ).map( ... ) gives me the possiblity to run closures with my own parametrization whereas all the other threadpools and so on make a hash of a  'static Fn() -> () assumption that forces me to fiddle with egregious static mut or whatever not ... I don't need tons performance, I'm running a couple tens requiests/sec tcp-services server and for that your stuff works great. Plus, I can do thinks like takin in a Future and just piggy-back something in the server code on it and so on ... Very neat ...

And yeah, I definitely recommend to put some heavy 'caution' signs on the poll doc and roughly outline when it's leggit to call and when not. Your 'panics' catch things nicely but without reading tons source they're cryptic and don't help to understand WHAT needs to be done for poll to be legal.

Ok, seems good to reopen as a docs issue!

I believe once https://github.com/rust-lang-nursery/futures-rfcs/blob/master/task-context.md is fully implemented this will effectively become self-documenting so I'm going to close


Update customize-onedrive-for-business-sites.md

I have updated this article to refer to OneDrive instead of the now deprecated term 'OneDrive for Business' or 'OD4B'. I have also changed 'Office 365' to 'Microsoft 365' in a few places to reflect the updated branding.
Category

[x] Content fix
[ ] New article

Related issues
none
What's in this Pull Request?
Documentation update

Docs Build status updates of commit f5cebfa:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/solution-guidance/customize-onedrive-for-business-sites.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Give more extra inhabitants to BridgeObject.

The standard library never ended up needing the low extra inhabitants (<4G on 64-bit Darwin,
<4K elsewhere), so BridgeObject can have the same set of extra inhabitants as the other refcounted
types, allowing String????? and Array?????????? to still use optimized representations.
rdar://problem/45881464

@swift-ci Please test

Build failed
Swift Test Linux Platform
Git Sha - 67861dfbb9350d22e68c62e60e57001e72688c32

@swift-ci Please smoke test Linux

Build failed
Swift Test OS X Platform
Git Sha - 67861dfbb9350d22e68c62e60e57001e72688c32

@swift-ci Please smoke test


build: remove vestigial CMake parameters (NFC)

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - f5cce3f0434c6b0c0c7854d900345650a47fd12c

@swift-ci please test Linux platform

Build failed
Swift Test Linux Platform
Git Sha - f5cce3f0434c6b0c0c7854d900345650a47fd12c

@swift-ci please test

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 0eb9ea5199912b1c00df1aab3957b4a69b9ee970

Build failed
Swift Test OS X Platform
Git Sha - 0eb9ea5199912b1c00df1aab3957b4a69b9ee970

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 0eb9ea5199912b1c00df1aab3957b4a69b9ee970

Build failed
Swift Test OS X Platform
Git Sha - 0eb9ea5199912b1c00df1aab3957b4a69b9ee970

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 0eb9ea5199912b1c00df1aab3957b4a69b9ee970

Can one of the admins verify this patch?

Please update the base branch to main by Oct 5th otherwise the pull request will be closed automatically.

How to change the base branch: (Link)
More detail about the branch update: (Link)


Streamline build process

When we separated make download from make all we removed some lines that set all of our repos to the develop branch.
It would be nice to have all the repos set to develop at the end of make download again so we don't have to revert them manually.

@jesings fixed up our make process so download works coherently! Thanks!
The last step here is to make the environment variables persist in Docker. This includes the variables for lindsh as well as the main Lind environment variables (the ones listed in the Making Lind from Scratch wiki).
Once that is done this might actually be sane for someone to come in with no knowledge and set up!

Ok, so in order to do this we need to realistically do a big merge of develop branches to master. There's a number of inconsistencies here that are either are relevant or annoying that should be fixed.
Lind Project
Just needs a straight develop to master merge
Native Client
same develop-> master, but seems to have master ahead by one commit?
NaCl Repy
Huge discrepancy between the develop and master branches, some of this has to do with commits to the file structure.
Lind Glibc
This seems like a straight develop to master... but its forked from a cmatthew repo that I'm not sure we need to keep the reference to?
NaCl-GCC
This is also straight develop to master, but master is named i686_caging now? Id like to revert that back to master
NaCl Binutils
Develop is way behind master because of inconsistencies in where we took the updates from? I think here we need to make a new "master" branch and put where we are with develop there.
third party
Minor inconsistency between develop and master?
Lind Misc
Develop and master are at the same point, but has the same cmathew fork issue as glibc
Reference Monitor
This is unused and I think is worth removing.

Third Party
This is actually strange, our builds aren't even pointed to the repo we have hosted for third_party. It's pointed directly at googles native client repo for third party at the latest commit.
Since this all has been working, I'm pretty sure the small handful of commits to the repo we have are irrelevant. I possibly should archive their third_party repo as our own and get rid of what we currently have.

nacl_repy
The branches here are pretty fubar (see image below) and I don't think an actual merge is going to be helpful. I think a direct replacement of the master branch with what we currently have in develop makes the most sense.

The merge is finished. We can now just pull from docker and immediately have a working image with no shenanigans. Hooray!


TLSRPT always fail

I tested my domain on your online testing site and I always got TLSRPT failed.
Error: Cannot resolve DNS: domain _smtp-tlsrpt.mxdove.com does not exist.
Is there problem with my DNS setting?
My test shows:
# dig _smtp-tlsrpt.mxdove.com TXT +short
"v=TLSRPTv1\<EMAIL_ADDRESS>Thanks for help.

It works fine now. Please close this. Thanks.


undefined document.getElementsByTagName('iframe')[0].iframeResizer in example published

Hi guys!
I'll try to call document.getElementsByTagName('iframe')[0].iframeResizer.resize() from on-line example http://davidjbradshaw.com/iframe-resizer/example/ but always got  VM1319:2 Uncaught TypeError: Cannot read property 'resize' of undefined(…)
But as you can check in the image below, the iframe exists and is resizer works properly

It's very related to #341
thanks in advance for your help
Juan

Do you have more then one iFrame on the page? Use getElementById rather thantagName.

Hi @davidjbradshaw and thanks for your response
I don't think this is the problem in your published example http://davidjbradshaw.com/iframe-resizer/example/
document.getElementsByTagName('iframe').length
=> 1

could you reopen the issue again so anyone could take a look on that?
Thanks again!
Juan


Grammatical change at #numbers-1

Sass makes no distinction between numbers, integers, floats so trailing zeros (0) should be omitted. should read Sass makes no distinction between numbers, integers, and floats, so trailing zeros (0) should be omitted.

Good catch! If you’d like to issue a pull-request, I’ll merge it. :)

Thanks! It may take me a moment, as I've never made a contribution on GitHub. Time to start Googling!


Unable to delete content page

After creating a content page and refreshing, there was no option to delete the created page or to create a new content page once the session has been refreshed.

Not sure if this is a bug or designed as intended.  I can find an option to delete using the Manage > CMS menu however it is not clear from a user perspective how "CMS" correlates to "Pages"  Consider changing the menu options so that it makes more sense.


License

Hello,
I was looking at your project in order to fill a need for my University group's project. I note that your project doesn't have any kind of licensing options attached to it.
Would we be able to use your code to interface with CGAL please? I recommend the MIT license or similar.
Best wishes!

I've added LICENSE with a copy of the MIT license :)


Licenses

This makes the about page show the licenses of all the Dart packages that a Flutter app uses.
Issues that this does not yet resolve:

I'm still working on getting the full list of licenses for the sky_engine package.
Some of the licenses don't print very readably.
There's no scrollbar on the license page.

I'll provide fixes for the first two in the coming days, but this should unblock anyone who is wanting to see something here, even if it's not quite complete. :-)

The patch makes the following changes:

The license registry is now asynchronous, since the data comes from disk.
I moved the default license collector from the foundation package to the services package since it uses the default asset bundle now.
The FLX builder now includes the LICENSE files of each Dart package mentioned in the .packages file.

Thank you very much for plumbing this all the way through.

cc @abarth for framework changes, cc @devoncarew for tool changes

lgtm; one question about de-duping


Project Plan Builder II

Project Plan Builder II
Issue Number(s): #28 #8 #21 #9.
This PR refines the Project Plan Builder Page by removing searching issues, adding filtering by tags, and resembling design plans more closely.
Checklist

[ ]  Code follows design and style guidelines
[ ]  Code is commented with doc blocks
[ ]  Latest code has been rebased from base branch (usually develop)
[ ]  Relevant reviewers (Senior Dev/EM/Designers) have been assigned to this PR

Critical Changes
Pretty sure there are no critical changes.
Related PRs

#24

The scope of PPL has changed a fair bit, so I think this is a good point to leave it on for now


Fixed #175 - Updates for Fluo 1.0.0-incubating release

I tested this PR by launching a cluster and setting up an idle Fluo application.


Wording update to Using Deployment Section

Currently, there is a block of commands to run which include creating the service and the deleting the service:
cf delete-service -f test_shared_instance
cf services
Following that is this sentence:
Ideally you will bind the service you created to an application and use it. You can go ahead download and test the Solace Sample Apps, or create some of your own.
I think maybe the delete-service stuff could be moved to the "Other useful commands and tools" section so that you are not deleting the service., then trying to use it.

Good suggestion.


Added command for showing dog and cat photo

Added code for showing randomly generated dog and cat photos in web-browsers

Looks good to me! 🔥
Just an extra feature we could add if you want I mentioned it as comment here:
https://github.com/shreyar7/Alexis/pull/1#discussion_r768285734


Find New price

Description
you will be given two integers .. the first one is the price of the wanted object .. the second one is the discount percentage .. your task is to calculate the price of it after the discount
Ex:
input
1500
50
output:
750
Domain
CPP
Type of Contribution
No response
Code of Conduct

[X] I follow Contributing Guidelines & Code of conduct of LearnCPP.

/assign

/assign


TtppObject may fail to parse valid object names

Environment
Operating System: n/a
VenafiPS version: 4.4.0
PowerShell version: 5.1+
TPP version (if applicable): 21.4

Steps to reproduce
Create a team in TPP having a name with colon, for e.g. test::1. Fetching this team via Get-VenafiTeam will throw an error.
Get-VenafiTeam -All
Same can reproduced by creating a policy folder with colon characters in the name then using Get-TppObject to get this folder.
Expected behavior
This object should be fetched without throwing an error.
Actual behaviour
Although the object is fetched, following error is also thrown:
Split-Path: /Users/saad.humayun/Downloads/VenafiPS/VenafiPS/Classes/TppObject.ps1:17:22
Line |
  17 |          $this.Name = Split-Path -Path $this.Path -Leaf
     |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | Cannot find a provider with the name '\VED\Identity\Test'. The name is not in the proper format. A provider name can only be
     | alphanumeric characters, or a PowerShell snap-in name that is followed by a single '\', followed by alphanumeric characters.

More Info
Split-Path function used by Tpp-Object does not allow all valid characters that can be used in the object names.

When the object is a Team, fetched via Get-VenafiTeam -All function, it appears to have all the properties present.
When the object is a Policy Folder or a Team fetched via Get-TppObject function, the name is missing and ParentPath is corrupted.
An error is thrown in both cases.
Get-TppObject -Path '\VED\Policy\Certificates\folder name::is valid'
Split-Path: /Users/saad.humayun/Downloads/VenafiPS/VenafiPS/Classes/TppObject.ps1:17:22
Line |
  17 |          $this.Name = Split-Path -Path $this.Path -Leaf
     |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | Cannot find a provider with the name '\VED\Policy\Certificates\folder name'. The name is not in the proper format. A provider name
     | can only be alphanumeric characters, or a PowerShell snap-in name that is followed by a single '\', followed by alphanumeric
     | characters.

Name       :
Path       : \VED\Policy\Certificates\folder name::is valid
TypeName   : Policy
Guid       : afa2b39c-bb1c-4e90-8d32-2532c7dfbf60
ParentPath : VEDPolicyCertificatesfolder name::is valid

Getting a Team by passing a known ID does not throw this error.
Get-VenafiTeam -ID 'prefixedUniversalId of test::01'


K-Means checks and cleanup: sync with gold (batch and distributed)

/intelci: run

/intelci: restart


Allow ability to move notes to a different directory without resyncing

Currently, if you move a book note out of the selected directory, the next time sync runs, you get a full sync.
Unfortunately this is a bit problematic, as there are some book notes I keep in a private folder that I don't publish, and others I already have pulled in via other methods that I don't want duplication.
It would be great if there was a tag or YAML metadata field the plugin checks to sync up titles, or something of that sort.

I know this has been a long time coming... but this feature is not finally available as of v1.0.0.
The plugin now uses frontmatter at the top of every file to store state information. This has allowed for a user to move a file to any directory in the vault that they would like. The plugin is still aware of the highlights file and will factor that into account with any future sync and resync.


change branch naming convention in newbie guide

We want to have branches named something descriptive. We should point out that branch name length is not anissue. Long descriptive names are good. Names should be in camelCase

fixed with PR #398


[Suggestion] Disable normal map/bump map/spec map & dynamic light

Hi i would like to suggest further increase the fps by disable the rendering of those map, it would help weak gpu

Hi, also on some maps using "ent_fire env_cascade_light fire" kill the light which have like 30 fps boost

Any clue how to do it?

@danielkrupinski there are a few sv_cheats protected cvars "mat_specular" "mat_fastnobump" etc... i don't know all of them by memory but you can disable dynamic light sources, specular maps and bump maps

I think somebody just need to find the address but I dont know how. Its the same thing with mat_postprocess enable stuff

I've added shadows removal option which gives bigger fps boost that this. Closing.

nice!


Drag&Drop within the same Control (ItemsControl) calls Remove & Add

I'm trying to catch the Drag&Drop event within a ItemsControl I'm using and to do this I listen to the ObservableCollection CollectionChanged event. But the drag and drop always removes the item and then adds the item. Is there a way to make it so it uses the Move method instead... as it would be better to differentiate from the Add Item and Remove Item functionality I already implemented.
Thank you so much! (and sorry for not following the post recommendations but it is not really a bug or a issue.. is more like a question)

@xDGameStudios You can make your own IDropTarget or derive from DefaultDropHandler and handle the Drop by yourself.

For reference, this is an example implementation which performs this optimisation (for single-select lists only, though you could probably extend it to support multi-select).
It would be nice if something similar could be included in DefaultDropHandler in some future version... :wink:
public override void Drop(IDropInfo dropInfo)
{
    var source = dropInfo.DragInfo.SourceCollection.TryGetList();
    var target = dropInfo.TargetCollection.TryGetList();

    if (target != null && ReferenceEquals(source, target))
    {
        var insertIndex = dropInfo.InsertIndex;
        if (insertIndex > dropInfo.DragInfo.SourceIndex) --insertIndex;
        if (insertIndex == dropInfo.DragInfo.SourceIndex) return;

        var moveMethod = target.GetType()
            .GetMethod("Move", new[] { typeof(int), typeof(int) });
        if (moveMethod != null)
        {
            moveMethod.Invoke(target,
                new object[] { dropInfo.DragInfo.SourceIndex, insertIndex });
            return;
        }
    }

    base.Drop(dropInfo);
}

I haven't tested it on sorted/filtered lists; it might require some more magic to handle those properly.


Delayed animations only trigger when scrolling in down direction

Hey man, love the work you've done here, thank you!!!
Your implementation of delayed animations resolved some laggy mobile animation issues I unfortunately wasted hours unsuccessfully fixing using alternative solutions.
I noticed that in scenarios where a page is refreshed lower down or jumped to somewhere farther down , scrolling up does not trigger elements with .animate_when_almost_visible. Is there any way to have bidirectional scrolling detection?
Also, how would you go about resetting animations of elements once they've been scrolled past and are out of view? I want to re-animate the green call buttons on this page so that every time they're seen they play their animation, not just one time: http://driving-school-surrey.ca/

Hi @Invincibear
For the first one, unfortunately my solution is based on Waypoint  concept.  In this scenario where a page is refreshed lower down or like you said jumped to somewhere farther down, it means that the user already seen the content before the viewport area.
I will try to solve, but maybe you can see the Waypoint  api to try to create you own solution if you want.

Hey @Invincibear i created a simple solution for that.
Add the class repeat_animation to repeat when the scroll up
Just check the example and readme for more info.
I hope this can be useful for you.


Instance Id to Semantic labels mapping in Gibson

I am trying to do the same thing as here. ( https://github.com/facebookresearch/habitat-sim/issues/760) With the gibson data set.
Trying to create the semantic map using the semantic information from scene.
I am following this tutorial https://aihabitat.org/docs/habitat-api/habitat-sim-demo.html#scene-semantic-annotations
But somehow the semantic_scene.objects() comes out to be a none value.
Is the mapping available somewhere else through the code?

That shouldn't be empty.  Can you turn on logging? i.e.
unset GLOG_minloglevel MAGNUM_LOG
export GLOG_v=1

I am trying to do the same thing as here. ( #760) With the gibson data set.
Trying to create the semantic map using the semantic information from scene.
I am following this tutorial https://aihabitat.org/docs/habitat-api/habitat-sim-demo.html#scene-semantic-annotations
But somehow the semantic_scene.objects() comes out to be a none value.
Is the mapping available somewhere else through the code?

Hii, was that possible to create semantic map using the semantic information from scene. How did you do it, can you tell me in brief . I am also attempting similar task but via. egocentric RGBD images. So, just want to know. Thank you.

We made use of the .glb, .scn and .id files  and stored the relevant information in npz files.
Something like this:
You might have to take care of the paths to the data set files.
    import habitat_sim
    from plyfile import PlyData, PlyElement
    import json
    sim_cfg = habitat_sim.SimulatorConfiguration()
    agent_cfg = habitat_sim.AgentConfiguration()

    scenes_dir = "/<path>/habitat-api/data/scene_datasets/mp3d/"
    preprocessed_scenes_dir = "/<path>/data/scene_datasets/mp3d_scene_pclouds/"

    scene_list = os.listdir(scenes_dir)

    for i in range(len(scene_list)):
        scene_id = scene_list[i]
        print('Scene:', i, scene_id)

        if os.path.exists(preprocessed_scenes_dir+scene_id+'_pcloud.npz'):
            continue

        glb_path = scenes_dir + scene_id + '/' + scene_id + '.glb' # mp3d case
        scn_path = scenes_dir + scene_id + ".scn"
        ids_path = scenes_dir + scene_id + ".ids"

        sim_cfg.scene.id = glb_path
        sim = habitat_sim.Simulator(habitat_sim.Configuration(sim_cfg, [agent_cfg]))

        scene = sim.semantic_scene
        # Load .scn and .ids files
        #scn = np.load(scn_path)
        ids_data = np.fromfile(ids_path, dtype = np.int16)

        scn_data = json.load(open(scn_path, "r"))
        ply_path = scenes_dir + scene_id + '_semantic.ply' # gibson case
        data = PlyData.read(ply_path)

        instance_id_to_label_id = {int(obj.id.split("_")[-1]): obj.category.index() for obj in scene.objects}

        # store the pcloud geometry and semantic labels
        x, y, z = data['vertex']['x'], data['vertex']['y'], data['vertex']['z']
        object_id = data['face']['object_id']
        object_id = np.asarray(object_id)
        object_id = np.repeat(object_id,3)
        vertex_indices = data['face']['vertex_indices']
        vertex_indices = np.concatenate(vertex_indices).ravel()
        label_id = np.vectorize(instance_id_to_label_id.get)(object_id)
        label_seq = np.zeros(len(x))
        label_seq[vertex_indices] = label_id
        label_seq = np.asarray(label_seq)
        label_seq = label_seq.reshape((len(label_seq),1))
        np.savez_compressed(preprocessed_scenes_dir+scene_id+'_pcloud.npz', x=x, y=y, z=z, label_seq=label_seq)

        # store the pcloud color info for visualization
        r, g, b = data['vertex']['red'], data['vertex']['green'], data['vertex']['blue']
        r_seq = np.ones(len(x))*255
        g_seq = np.ones(len(x))*255
        b_seq = np.ones(len(x))*255
        col_map = utils.color_mapping
        for color_label in col_map:
            color = col_map[color_label]
            r_seq[vertex_indices[np.where(label_id == color_label)]]= color[0]
            g_seq[vertex_indices[np.where(label_id == color_label)]]= color[1]
            b_seq[vertex_indices[np.where(label_id == color_label)]]= color[2]
        np.savez_compressed(preprocessed_scenes_dir+scene_id+'_color.npz', r=r, g=g, b=b, r_seq=r_seq, g_seq=g_seq, b_seq=b_seq)
        data=None
        sim.close()

        ```


#define AUTOPAINT_UNDO

This edit makes it easy to enable/disable the terrain autopaint undo.
When using large terrains 1024+ the undo code takes an absolute age to complete, while the undo functionality can be disabled, it is spread throughout the code.

Ah, nice :D


quilll-sql: support value queries

Fixes #341
Problem
Quill doesn't support selecting values or operations.
db.run(qr1.map(_.i).contains(1))
db.run(1)

Solution
Change SqlQuery to support this kind of quotations.
Checklist

[x] Unit test all changes
[x] Update README.md if applicable
[x] Add [WIP] to the pull request title if it's work in progress
[x] Squash commits that aren't meaningful changes
[x] Run sbt scalariformFormat test:scalariformFormat to make sure that the source files are formatted

@getquill/maintainers

👍

👍

👍


Implement class utils::RGBAColor.

This will be useful when implementing Shapes - which can be drawn with a 4-components color in OpenCV.

Completed; Compiles; Still to be tested.


Add error messages on confusing config content

Using k8s-oidc-helper with a wrong client type will lead to confusing
errors when auth is attempted.  While this is technically correct, it's
probably a good idea to be a bit more user friendly and tell the user
what may be wrong.

It's been a while that this pull request has been open, I suppose it is not of interest. Closing.


Update k8s and use tls

use coreos-config yaml to configure instances
create aws auto-scaling group
tls for workers is generated by workes themselves using the ca and ca-key uploaded via cloud-config (should probably be made more secure)

Should be working out of the box. I just started with k8s so a lot of stuff could probably be accomplished better (TLS almost surely). My first PR ever, btw.

LGTM


How to set request mode to 'no-cors'?

I'm getting this error:
Access to fetch at 'https://www.udemy.com/course/vector-drawing-on-the-ipad-with-affinity-designer/' from origin 'http://localhost:5604' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

This library no longer does HTTP requests, it will now just pull Open Graph and Twitter Card info from HTML pass into it. Please open a new issue if you are still having problems.


PhantomJS don't load mobile.twitter.com

I try to load https://mobile.twitter.com from Python program using PhantomJS WebDriver.
My configuration - Selenium 2.44.0 + Python 3.4.2 + PhantomJS 2.0.0 (on Windows 7 x64).
But get error message:
Traceback (most recent call last):
  File "C:\Python\Python342x64\myprog\code.py", line 11, in <module>
    browser.get('https://mobile.twitter.com/')
  File "C:\Python\Python342x64\lib\site-packages\selenium-2.44.0-py3.4.egg\selenium\webdriver\remote\webdriver.py", line 185, in get
    self.execute(Command.GET, {'url': url})
  File "C:\Python\Python342x64\lib\site-packages\selenium-2.44.0-py3.4.egg\selenium\webdriver\remote\webdriver.py", line 171, in execute
    response = self.command_executor.execute(driver_command, params)
  File "C:\Python\Python342x64\lib\site-packages\selenium-2.44.0-py3.4.egg\selenium\webdriver\remote\remote_connection.py", line 349, in execute
    return self._request(command_info[0], url, body=data)
  File "C:\Python\Python342x64\lib\site-packages\selenium-2.44.0-py3.4.egg\selenium\webdriver\remote\remote_connection.py", line 417, in _request
    resp = opener.open(request)
  File "C:\Python\Python342x64\lib\urllib\request.py", line 455, in open
    response = self._open(req, data)
  File "C:\Python\Python342x64\lib\urllib\request.py", line 473, in _open
    '_open', req)
  File "C:\Python\Python342x64\lib\urllib\request.py", line 433, in _call_chain
    result = func(*args)
  File "C:\Python\Python342x64\lib\urllib\request.py", line 1202, in http_open
    return self.do_open(http.client.HTTPConnection, req)
  File "C:\Python\Python342x64\lib\urllib\request.py", line 1177, in do_open
    r = h.getresponse()
  File "C:\Python\Python342x64\lib\http\client.py", line 1172, in getresponse
    response.begin()
  File "C:\Python\Python342x64\lib\http\client.py", line 351, in begin
    version, status, reason = self._read_status()
  File "C:\Python\Python342x64\lib\http\client.py", line 313, in _read_status
    line = str(self.fp.readline(_MAXLINE + 1), "iso-8859-1")
  File "C:\Python\Python342x64\lib\socket.py", line 371, in readinto
    return self._sock.recv_into(b)
ConnectionResetError: [WinError 10054]

Code of my program:
import os, sys
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.common.exceptions import NoSuchElementException
from random import randint
from time import sleep

browser = webdriver.PhantomJS('C:\Program Files (x86)\PhantomJS\phantomjs.exe')

browser.get('https://mobile.twitter.com/')
sleep(randint(5,10))
browser.save_screenshot('out1.png')
g = open('C:\\Python\\Python342x64\\prog\\page.htm', 'a', encoding='utf8', errors='replace')
g.write(browser.page_source + '\n')

If I use Firefox instead of PhantomJS, everything work fine. (or if i load desktop version of twitter) How I can fix this problem with PhantomJS?

May be you need to change the PhantomJS UserAgent...


Updating color pallete

So i see your project uses some colors that are not in the palettes in the catppuccin readme.
So i updated the palette and started a concpet of a way to maybe suport mutiple themes.
I guess the way i doi it maybe not work because insomnia plugin hub only acpect a theme por package (i think, so im open to ideias as well)
I tried be consise and faithful ao thema criado, but some colors in the palette dont have the hex codes you used, so i change them.
Hope we can update this theme publish into the catppucin and the insmnia plugin hub.

Merged. thanks!


fix join sample (sample ignored rule "A query expression with a join …

fix join sample (sample ignored rule "A query expression with a join … clause without an into followed by a select clause...")

Bill, do you have time to look at this one? I've got a comment from Nigel that I've been putting off for a week but which really deserves attention...

(Closing was accidental.)


Able to get raidfinder running but then it stops after a second

Hey, thanks for writing the readme, it really helped me out.  I actually am able to get it running, but then after maybe around a second it bugs out.  I copied and pasted what it gave me below.  Appreciate it a lot, trying my best to figure it out.
[15:55:26] Starting stream...
[15:55:26] Connected.
[15:55:28] Found new raid:
[Boss] 0FCADC7A (Lvl 75 Luminiera Omega)
[From] RaspberryGBF (Yggdrasil Lover)
[Message]
[Action] Copied to clipboard
[15:55:28] Found new raid:
[Boss] 1CDA2A94 (Lvl 75 Luminiera Omega)
[From] ParamitsuRyuZu (YayaRyuzu)
[Message]
[Action] Copied to clipboard
Traceback (most recent call last):
File "main.py", line 147, in main
stream.filter(track=listener.streamFilter)
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\site-packages\tweepy\streaming.py", line 445, in filter
self._start(async)
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\site-packages\tweepy\streaming.py", line 361, in _start
self._run()
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\site-packages\tweepy\streaming.py", line 294, in _run
raise exception
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\site-packages\tweepy\streaming.py", line 263, in _run
self._read_loop(resp)
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\site-packages\tweepy\streaming.py", line 324, in _read_loop
self._data(next_status_obj)
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\site-packages\tweepy\streaming.py", line 297, in _data
if self.listener.on_data(data) is False:
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\site-packages\tweepy\streaming.py", line 54, in on_data
if self.on_status(status) is False:
File "main.py", line 106, in on_status
self.handleTweet(parsed)
File "main.py", line 95, in handleTweet
logMessage(message)
File "main.py", line 35, in logMessage
message = message.encode().decode(sys.stdout.encoding)
UnicodeDecodeError: 'cp932' codec can't decode byte 0x8a in position 78: illegal multibyte sequence
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "main.py", line 156, in
main()
File "main.py", line 151, in main
traceback.print_exc(e)
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\traceback.py", line 159, in print_exc
print_exception(*sys.exc_info(), limit=limit, file=file, chain=chain)
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\traceback.py", line 100, in print_exception
type(value), value, tb, limit=limit).format(chain=chain):
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\traceback.py", line 464, in init
capture_locals=capture_locals)
File "C:\Users\Fabella\AppData\Local\Programs\Python\Python35\lib\traceback.py", line 322, in extract
if limit >= 0:
TypeError: unorderable types: UnicodeDecodeError() >= int()

This is a bug caused by Python and Windows' CMD when the raidfinder is printing out unicode characters obtained from the tweets. I've added a new option in the configuration to make the raidfinder only print the raid codes, avoiding any unwanted unicode characters to be printed out. Pull the newest commit and add this option to your config.ini
[Raidfinder]
...
OnlyPrintCodes

Hey, that fixed it, it works now.  Thank's so much


Make e2e ibmcloud provisioner for managed cluster robust and support overlay operator

Generate COS_SERVICE_URL and VPC_SERVICE_URL based on region
Use VPC and Subnet name only without ID in properties and retrieve the ID if it's existing, create it otherwise.
Look up COS_INSTANCE_ID by COS_INSTANCE_NAME??
Look up SSH_KEY_ID by SSH_KEY_NAME??
Check IKS cluster created completely before install operator
Check IKS cluster deleted completely before delete subnet and vpc
??

@stevenhorsman @liudalibj please add more comments here for any enhancements you have thought about.

Looks this is not reasonable always: Generate COS_SERVICE_URL and VPC_SERVICE_URL based on region.
Because the URL might not be related with region only.


Waypoint: Turn an Image into a Link Bug

Challenge http://www.freecodecamp.com/challenges/waypoint-turn-an-image-into-a-link has an issue. Please describe how to reproduce it, and include links to screen shots if possible.
I am not sure if this is a bug, but I thought it was very odd so decided to report it just in case.
Literally all I did for this challenge was turn this line of code:

into this:
It did not look at all like the example code where I had to define and image with a link. Instead, all I had to do was add the < after . I am pretty sure this is a bug. Plus, the  tags were highlighted after I accomplished this:

Sorry if this isn't a bug. I just thought it was very bizarre and did not follow the directions I read. Thanks.
-JC

Can confirm adding a single < character to the beginning of cat photos does pass the challenge and replicates the bug

If just thrown up a fix for this and hopefully it will be included in staging before in is deployed

I think It's actually a bug because it needs a closing > after the catphotos. But instead it will accept it as correct when you remove the closing > .

very strange , but it works


Can we exclude a record type?

Hi Doug, we have a legacy app that allows clients to upload documents (as attachments) to opportunities via a portal. Apparently these anonymous portal users do not have access to Salesforce files (only attachments) so we need to exclude these attachments from being converted (for a couple of opportunity record types).  Can the object selection be expanded to add a number of record types to be excluded from the automated (batch) conversion process?

Hi @DarylMoon, I hear you loud and clear on this one and it's one that I've been wanting to implement for a while. Please follow this issue for progress updates #15
I'll be closing this specific issue but tracking the request on the other issue.
Thanks!


Add missing jquery dep for example

This is a good joke. I appreciate this.

The example does require it :)

Which one :( I'm pretty sure we only use virtual-dom or React in examples.

Okay now I feel like I'm going crazy. I tracked this down but now it's working. Well then sorry for the noise.

No worries; thanks for opening a PR though.

There is an example that requires jquery. When I run npm run build:
 npm run build

><EMAIL_ADDRESS>build /home/colin/mercury
> node bin/build.js

reading /home/colin/mercury/examples/geometry/browser.js
reading /home/colin/mercury/examples/todomvc/browser.js
reading /home/colin/mercury/examples/markdown/browser.js
reading /home/colin/mercury/examples/number-input/browser.js
reading /home/colin/mercury/examples/unidirectional/backbone/browser.js
reading /home/colin/mercury/examples/unidirectional/jsx/browser.js
reading /home/colin/mercury/examples/unidirectional/immutable/browser.js
reading /home/colin/mercury/examples/login-form/browser.js
reading /home/colin/mercury/examples/bmi-counter.js
reading /home/colin/mercury/examples/shared-state.js
reading /home/colin/mercury/examples/count.js
reading /home/colin/mercury/examples/canvas.js
reading /home/colin/mercury/examples/async-state.js
reading /home/colin/mercury/examples/real-dom.js
events.js:141
      throw er; // Unhandled 'error' event
      ^

Error: module "jquery" not found from "/home/colin/mercury/node_modules/backbone/backbone.js"
    at notFound (/home/colin/mercury/node_modules/browserify/index.js:803:15)
    at /home/colin/mercury/node_modules/browserify/index.js:754:23
    at /home/colin/mercury/node_modules/browserify/node_modules/browser-resolve/index.js:185:24
    at /home/colin/mercury/node_modules/browserify/node_modules/resolve/lib/async.js:44:14
    at process (/home/colin/mercury/node_modules/browserify/node_modules/resolve/lib/async.js:113:43)
    at /home/colin/mercury/node_modules/browserify/node_modules/resolve/lib/async.js:122:21
    at load (/home/colin/mercury/node_modules/browserify/node_modules/resolve/lib/async.js:54:43)
    at /home/colin/mercury/node_modules/browserify/node_modules/resolve/lib/async.js:60:22
    at /home/colin/mercury/node_modules/browserify/node_modules/resolve/lib/async.js:16:47
    at FSReqWrap.oncomplete (fs.js:82:15)

npm ERR! Linux 4.2.5-1-ARCH
npm ERR! argv "/home/colin/.nvm/versions/node/v4.2.1/bin/node" "/home/colin/.nvm/versions/node/v4.2.1/bin/npm" "run" "build"
npm ERR! node v4.2.1
npm ERR! npm  v2.14.7
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>build: `node bin/build.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>build script 'node bin/build.js'.
npm ERR! This is most likely a problem with the mercury package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node bin/build.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls mercury
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/colin/mercury/npm-debug.log

YES! That was it!

Oh I see; looks like we do need jquery (backboooooooooooone).

We can add that to dev deps.

Our friend @coballast fixed this :) thanks.


Facebook Share Error in About-Us Hero

Currently getting the following error when clicking on the Facebook share button on the About-Us Hero.

Need to find out who has admin rights to the CFPB Facebook page. Might need to just whitelist Flapjack/Refresh domains per @jimmynotjim , @KimberlyMunoz .

Share now seems to work differently.


Cannot list devices on Linux 20.04

I do no get any output from this tool when I run spoof list on Linux OS.
I've narrowed down the condition it is failing to pass, it is the regular expression for parsing the output of ifconfig.
https://github.com/feross/spoof/blob/58dd7deef89eaba09068a0fcd67adf1bcf6a3e1f/index.js#L117

Here is the output of `ifconfig`
br-420df7a1a7ee: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>  broadcast <IP_ADDRESS>
        inet6 fe80::42:10ff:fe81:e45a  prefixlen 64  scopeid 0x20<link>
        ether 02:42:10:81:e4:5a  txqueuelen 0  (Ethernet)
        RX packets 11438  bytes 2596038 (2.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 17119  bytes 2419291 (2.4 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>  broadcast <IP_ADDRESS>
        inet6 fe80::42:efff:fe5b:5ba7  prefixlen 64  scopeid 0x20<link>
        ether 02:42:ef:5b:5b:a7  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3  bytes 306 (306.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 3953586  bytes 723678103 (723.6 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3953586  bytes 723678103 (723.6 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlp0s20f3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet <IP_ADDRESS>  netmask <IP_ADDRESS>  broadcast <IP_ADDRESS>
        inet6 2001:a61:243f:5101:94c1:c4f1:ccb6:5c1c  prefixlen 64  scopeid 0x0<global>
        inet6 2001:a61:243f:5101:5324:51f6:1c7d:6  prefixlen 64  scopeid 0x0<global>
        inet6 fd00::6adc:ffea:e940:a20c  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::702d:52ab:7674:588d  prefixlen 64  scopeid 0x20<link>
        inet6 fd00::4bd6:4c28:c115:4ef6  prefixlen 64  scopeid 0x0<global>
        ether dc:41:a9:9f:a8:d5  txqueuelen 1000  (Ethernet)
        RX packets 20323810  bytes<PHONE_NUMBER>1 (13.5 GB)
        RX errors 0  dropped 334652  overruns 0  frame 0
        TX packets 13009338  bytes<PHONE_NUMBER> (7.2 GB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Do we know why the pattern of (.*?)HWaddr(.*) is expected? Can we improve this parsing?

Searching on Google for others with similar output, it appears on Ubuntu it is not guaranteed to have HWaddr in ifconfig output. For example, on SO


forc fmt doesn't format arrays very well.

Here's what it did to a recent PR of mine:
diff --git a/src/b512.sw b/src/b512.sw
index 2bcf573..ff5f664 100644
--- a/src/b512.sw
+++ b/src/b512.sw
@@ -4,7 +4,8 @@ library b512;
 /// Stores two b256s in contiguous memory.
 /// Guaranteed to be contiguous for use with ec-recover: std::ecr::ec_recover().
 pub struct B512 {
-    bytes: [b256; 2],
+    bytes: [b256;
+    2],
 }

 // @todo use generic form when possible
@@ -19,7 +20,8 @@ pub trait From {
 impl From for B512 {
     fn from(h: b256, l: b256) -> B512 {
         B512 {
-            bytes: [h, l],
+            bytes: [h,
+            l],
         }
     }
 }
@@ -30,7 +32,7 @@ impl B512 {
     fn new() -> B512 {
         B512 {
             bytes: [0x0000000000000000000000000000000000000000000000000000000000000000,
-                    0x0000000000000000000000000000000000000000000000000000000000000000],
+            0x0000000000000000000000000000000000000000000000000000000000000000],
         }
     }
 }

@leviathanbeak I just made a draft #1054  for this, but I'm running into the +/+ symbol and I'm wondering if you have an insight on how to get around it? Here's a snippet for example: `r"library b512;
pub struct B512 {
    bytes: [b256; 2],+/+
}
impl B512 {
    fn new() -> B512 {
        B512 {
            bytes: [0x0000000000000000000000000000000000000000000000000000000000000000,+/+ 0x0000000000000000000000000000000000000000000000000000000000000000],
        }
    }
}";`

@eureka-cpu check this file: https://github.com/FuelLabs/sway/blob/master/sway-fmt/src/constants.rs
that "+/+" is added in the first pass,
from what I see here:
https://github.com/FuelLabs/sway/blob/master/sway-fmt/src/code_builder.rs#L134
"," - comma, is considered a line breaker so it creates a newline,
one thing you could do is to add a flag is_array (maybe a bit more generic name if some other things behave similarly)
and then not break into newline here
https://github.com/FuelLabs/sway/blob/master/sway-fmt/src/code_builder.rs#L137
you could also add the logic to check the length of the current CodeLine, and if it's above 60 or whatever then actually go into newline.
is_array() could also be part of the CodeLine
just like is_string() is
https://github.com/FuelLabs/sway/blob/master/sway-fmt/src/code_line.rs#L45
just in this case maybe something more generic is_collection() would be more appropriate


Check is not defined

Missing dependency?  This error comes up when attach behavior is called.

Which version? 1.0.8?

Should be fixed with version 1.0.9


PromiseKit 7 support

We did not want to wait for PromiseKit 7 release, where some code could be improved using the standard Result type.
So I am adding this issue just so we won't forget to add this later.

PromiseKit 7 is still in alpha and there is not much progress. I will close this issue until new version is released.


Add deserializer for CanFulfillIntentRequest

Description
Adds a deserializer for CanFulfillIntentRequests.
Previous PR was accidentally submitted before I filled out the description, and I was unable to edit it once submitted.
Testing
Ran it locally using pytest. Imported the handler and passed the request in, and asserted the canFulfillIntent response object.
Motivation and Context
Without this, it's impossible to accept CanFulfillIntentRequests.
Checklist

[x] My code follows the code style of this project
[x] My change requires a change to the documentation
[ ] The change is generic and can be done across all model classes.
[x] By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Hey @timothyaaron , thanks for the PR. As mentioned in our contributing doc, these models are generated from the JSON schemas, so we cannot take your PR unfortunately. However, I have already requested the service team to look into adding this into the models.

Thanks man. Glad that the community is using it and finding it helpful. It's still day 1 for us. Let's add more features to the SDK :+1:  :snake:


DOC: single entry point and linear path through tutorials

This issue is for planning the next round of doc improvements.  The goals for this round:

a single entry point for new users for a "getting started" or "60 minute blitz" tutorial or sequence of tutorials.
a linear path through tutorials (even if not part of the "getting started" series)
general improvements to all tutorials:

more verbose explanations
more links to methods literature
more info about sensible ranges for function/method parameters

cc @agramfort @dengemann @larsoner @massich @choldgraf

All sound good in prinicple. In practice (2) might be tough given that people can go different routes. For example Lauri's and MNE's diagrams look like this, and they only cover source localization:

Neither is complete, MNE has many more things you can do (sensor space analyses, ML, stats, TF, connectivity, ...). Maybe first we should:

Complete a diagram. Probably the MNE one, since it's programmable. First make it complete, then make it pretty like the first one.
Make the tutorial flow like the diagram, somehow (?).

Since there is no single path, we could consider trying to make something like the sklearn cheat sheet.

Yes, people can go different routes, and not all routes lead to SourceEstimate.  What I'm envisioning is:

the tutorials gallery page should get some structure (in the form of subheadings) similar to the "auto examples" gallery
we pick one workflow to use in the "getting started" tutorial sequence, and put those tutorials under the first subheading of the new tutorials gallery
other "workflows" could be constituted from other sequences of tutorials, and could likewise have their own subheading on the tutorials gallery page.
any tutorials not part of a "workflow" sequence can go under subheadings that are thematic (for example, a collection of a few different tutorials related to connectivity --- may not form a natural progression, but instead may be a "pick whichever one of these fits your use case" kind of collection)
as a last resort, there can be a "miscellaneous tutorials" subheading at the end, for things like "the info data structure" tutorial maybe.

Regarding the diagram: what do you think about each "workflow" tutorial series starting out with its own diagram outlining that particular workflow?  So there would be multiple different diagrams (rather than one-diagram-to-rule-them-all)?  I'm worried that trying to fit all of what MNE-Python does into a single diagram may be a bit of a rabbit hole.
I'll also add that it might not make sense for the tutorials to match 1-to-1 with the nodes in those existing diagrams --- for example, we might decide that the structural MRI -> conductor model and structural MRI -> source space steps in Lauri's diagram should be combined into a single tutorial page.  If so, that might influence how the diagram gets drawn, so I think it makes sense to firm up what workflow the diagram is supposed to represent before deciding what nodes should be in it.

Regarding the diagram: what do you think about each "workflow" tutorial series starting out with its own diagram outlining that particular workflow? So there would be multiple different diagrams (rather than one-diagram-to-rule-them-all)? I'm worried that trying to fit all of what MNE-Python does into a single diagram may be a bit of a rabbit hole.

I think we should try to make a monolithic diagram first, and if it becomes unwieldy, separate it. So far we have mostly avoided MNE objects feeding back onto themselves recursively or anything challenging like that, so I'm optimistic it's possible (hopefully without looking terrible!).
One motivation is that most workflows will involve the same steps (reading data, preprocessing, epoching), and it's obvious this is the case in a single diagram, and not so obvious if diagrams are separated. And if you want to start from raw data and get to some node (or multiple nodes), it's clear which steps are needed.
If we tried this method, then the "Getting started" could just cover step-by-step the most common workflow, probably raw->epochs->evoked->bem+src->fwd+cov->inv->source estimate or so (this is more or less what's outlined in both diagrams above, actually). In the end this could just be a subset of the global workflow / diagram.
If it would help, I could take some time to try to add all the main MNE-capable nodes to the existing diagram, and we could see how it looks. Or if it's already clear to you what would be added where, feel free to do it. In theory there are just 40 lines to modify/add to (especially if you delete the custom blocking/hierarchy code that follows the primary construction of the diagram):
https://github.com/mne-tools/mne-python/blob/master/doc/sphinxext/flow_diagram.py#L25-L66

Yes, people can go different routes, and not all routes lead to SourceEstimate. What I'm envisioning is:
the tutorials gallery page should get some structure (in the form of subheadings) similar to the "auto examples" gallery
we pick one workflow to use in the "getting started" tutorial sequence, and put those tutorials under the first subheading of the new tutorials gallery

tutorials are flat now as they were meant to be linked from documentation.rst
just to tell you the historical decision. I don't any strong feeling
about it but
I would start about documentation.rst again to put some highlights and make
flow diagrams to help people get the big picture

I spent some time iterating the flowchart today.  (I did it with mermaid as it's faster to iterate because it regenerates automatically; I can translate back to pygraphviz when it's finalized.)  Even with minimal additions (more thorough annotation of arrows and addition of the pipeline for getting anatomical labels) it starts to get hairy:

From there, even adding in four more operations (stc.in_label(), stc.to_label(), stc.extract_label_time_course(), and mne.spectral_connectivity()) makes it completely overwhelming as to be nearly unusable.

Granted, there is some untangling that could be done with something less automated than mermaid, but this exercise has only strengthened my conviction that a "one master diagram" approach is a bad idea.  @larsoner suggested we add:

sensor space analyses, ML, stats, TF, connectivity, ...

and I've only really added 1 of those (plus the label stuff) and it's already too much, I think.  Anyone willing to reconsider the "separate diagram for each workflow" idea?

here's a gist for the mermaid source, if anyone wants to play around with it: https://gist.github.com/drammock/17508eed83485c470d93036fdd5bfd9c
Also FYI there is a mermaid plugin for sphinx... probably only worth trying out if we opt for the "many simpler diagrams" approach, since it does poorly with big charts and its layout can't really be tweaked.

@drammock I did not know mermaind I was using plantuml (I guess I'm an old fella)

that's amazing !
having editable graphs with a text editor we can easily generate and update
for the doc is awesome

One question is about graphs being conceptual or input-output mappings.
What you built is what I'd consider an input-output map: what functions do I use, what are the output types that I need to feed to the next operation. I was thinking more at the conceptual level, at least for the landing page / introduction somewhere. (We can't cover both in a single map for all of MNE because as you see it will become unwieldy, since MNE has hundreds of public functions, classes, and methods.)
Instead of the input-output approach where nodes are functions or classes, and edges are computations, to stay at a more conceptual level, we could think of nodes as roughly objects / files, and edges as functions / operations to get from one place to another. Something like this (from gist):

This sort of framework could:

capture the vast majority (90%+?) of what MNE does for most users
make clear how to get from one place to another conceptually
does not make clear how to do it mechanically

Showing this type of diagram early in the doc lends itself to pointing people in the direction of the next subsection of documentation (not unlike we subsections have already, perhaps) that they need to get more information on each topic. We could potentially make it a clickable image map.
Maybe then subsets of the documentation could have detailed input-output type diagrams like the one you made @drammock? Or maybe after this first diagram, we could show a few different "workflow" diagrams for common things (source localization, connectivity, stats...?).
I'm still not sure how things should be organized, but it seems valuable to me to have both this sort of conceptual overview (early in doc), and the more mechanical diagrams (later in doc).

to make dreams come true is it possible to render such graph at
different levels of details eg to click/zoom and be able to see on a
phone display? also can we make the boxes clickable to refer to
functions in the API page... Yes I know I am dreaming out loud....

@agramfort it is possible to bind Mermaid node boxes into hyperlinks or javascript callbacks.  Not sure how easy it would be for that to trigger a zoom-in action.  But the default in-page rendering of a mermaid diagram is SVG, so a normal phone-screen pinch-zoom should at least yield close-ups of sections of the diagram that are more legible than the PNGs I generated locally with the CLI tool.

I tried to find a way to put your green boxes when hubbering the lines 'cos
they represent how you go from one box to the next. But I couldn't find how
to do that.
On Fri, Feb 15, 2019, 19:49 Daniel McCloy<EMAIL_ADDRESS>wrote:

@agramfort https://github.com/agramfort it is possible to bind Mermaid
node boxes into hyperlinks or javascript callbacks. Not sure how easy it
would be for that to trigger a zoom-in action. But the default in-page
rendering of a mermaid diagram is SVG, so a normal phone-screen pinch-zoom
should at least yield close-ups of sections of the diagram that are more
legible than the PNGs I generated locally with the CLI tool.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mne-tools/mne-python/issues/5937#issuecomment-464157833,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGt-4_vw7devHLCM9WZlTj9Z37LZ-JgXks5vNwE5gaJpZM4a6IXQ
.

@larsoner OK, now I understand.  I was misled by the arrow labels on the original diagram into thinking that you wanted all the arrows labeled, plus new arrows/nodes added.  I am fine with the idea of a conceptual diagram for the main documentation landing page, and maybe a few more detailed input-output diagrams for particular sequences of tutorials (AKA "workflows").

So it sounds like people like the diagrams (conceptual and detailed), as well as image-map-like functionality. Want to try adding the main conceptual + one specific one to #5944? (Or whatever seems like the best way to do it from your perspective?) That way we can see and test an alpha version.

@massich there's supposed to be a way to specify "tooltips" when hovering over nodes, but it didn't work when I tried it yesterday (but admittedly I didn't try very hard to figure out why not).  But even if it did work; as far as I know the tooltip only works for nodes, not for connections.

@larsoner I'll add a conceptual one to #5944 (today), and add a specific one to the first "tutorial sequence" in that same PR (probably mid-next-week).  Thoughts on mermaid vs. pygraphviz for the final product?

Mermaid seems better and more easily integrated during doc build

Can we make a PR with only adding the mind map? Kind of swapping the one we
have in the cookbook. And iterate from there.
On Fri, Feb 15, 2019, 20:07 Eric Larson<EMAIL_ADDRESS>wrote:

Mermaid seems better and more easily integrated during doc build
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mne-tools/mne-python/issues/5937#issuecomment-464163734,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AGt-420UzVzvQaGwSrwCgo-DHhxTH0Hxks5vNwV1gaJpZM4a6IXQ
.

I'm not sure that's the best way to go. The contents and layout will depend on how we want to structure the rest of the doc. If the monolithic PR (which #5944 might end up being) seems to unwieldy we can always separate it out.

I'm not sure a super complex diagram is a good idea. Instead of focusing on new fancy diagrams, I think a clear tutorial giving an overview of what is going on in the cookbook might be more useful. I did recently see Matti using an animated version of the cookbook diagram -- which seemed super useful. But you could also do something similar using proper subsections in text.
One needs to be upfront why so many different components are needed for solving the inverse problem. For a newcomer this can be intimidating. All we are trying to do is solve for X in the equation M = GX + E. Now, everything from raw to evoked is for getting M. Everything from T1 to forward solution is to get G, and the noise covariance is for getting the right E (with diagonal gaussian noise). Now, in principle you can compute X hat but then it's costly to invert matrices. So, you precompute this and do a plain dot product with M to get X hat.
So, really there are 3 different components to the whole thing and then you can go into details of each. Not volunteering to write this though :)

@jasmainak I like the idea of adding in the correspondence between the equation and the flowchart.  And I agree that a "super-complex" diagram is a bad idea.  Are you suggesting that the WIP diagram on CircleCI from #5944 here is still too complex?

just a quick remark. This flowchart should be too minimum_norm centered. It
should support the beamformer
or sparse solver use cases so I would not detail the 2 step approach
minimum_norm. To get sources esimates
(not just surface based) you need sensor data (evoked, epochs, raw) and an
inverse method and you get source
estimates or dipole locations. This should maybe simplify a bit to be less
precise here.
my 2c

@drammock I had not seen this before. The diagram right now is a great summary diagram for those already familiar with EEG/MEG processing but not good as an entry point in my opinion. It might help to get feedback from a newcomer to understand how much it is comprehensible.
We don't necessarily need to use equations, but maybe it could help. As @agramfort says, I agree it would help to be a little less precise here. My main suggestion is to break it down into 3 flowcharts / workflows:

raw to evoked: raw -> preprocess (maxfilter, ssp, ica, filter) -> events -> epochs -> evoked
T1 to forward: autorecon -> coreg -> forward
evoked/epochs/raw to source estimate: covariance + forward + evoked -> inverse -> stc

It should go with accompanying text (no code) and be explained in a single tutorial with links to existing examples for each of the subparts.

My usual EEG user comment is that all of the source stuff is very uninviting to EEG people. If the entry point and linear path contains a bunch of references to the inside baseball of MEG source reconstruction, that will scare off people.

I cannot agree more with @jona-sassenhagen :)

@jona-sassenhagen I think you'll be happy, the linear path so far looks like this (ones in parentheses are not yet pushed to #5944 because they're still sketches, may get reordered or subdivided):

loading raw > querying raw > subselecting data from raw > cropping and concatenating raw > built-in plotting methods of raw > exporting and saving data from raw > (annotations) > (interpolating bads)

background on projections > loading, saving, applying projectors > computing projectors > plotting projectors > working with sensor locations > (setting EEG reference) > (maxwell filtering) > (ICA) > (filtering) > (resampling)

(events) > (epochs from events) > (continuous epoching) > (epoch rejection) > (plotting epochs)

etc
So in other words won't get to source imaging until very late in the progression (which might mean that the flowchart ends up getting moved off of the docs landing page...  TBD and opinions welcome)

closing because the tutorials are now in a fixed order and there is a new docs landing page.


feat: override network through env variables after build

closes #1469 ~(VUE_APP_REMOTE_CONNECTION_BACKEND_URL would be handled separately)~
I've did some research and found several approaches.
Store configuration in a separate files (would produce an extra request)
https://www.npmjs.com/package/react-inject-env
https://www.codecentric.de/wissens-hub/blog/react-application-container-environment-aware-kubernetes-deployment
Specify env value in index.html
https://github.com/axelhzf/create-react-app-docker-environment-variables
https://iendeavor.github.io/import-meta-env/ (a complete tools set, looks overcomplicated)
Build on each container run
https://github.com/mikesparr/tutorial-react-docker
Discussions
https://stackoverflow.com/questions/52103155/reading-an-environment-variable-in-react-which-was-set-by-docker
https://stackoverflow.com/questions/49975735/rendering-an-environment-variable-to-the-browser-in-a-react-js-redux-production
https://github.com/facebook/create-react-app/issues/982#issuecomment-312577293
This way I can override network without rebuilding container, tested with
version: '3'
services:
  frontend:
    image: aepp-base
    build:
      context: .
    ports: ["3080:80"]
    environment:
      - VUE_APP_NETWORK_NAME=balabola network!
      - VUE_APP_NODE_URL=https://example.com
      - VUE_APP_MIDDLEWARE_URL=https://example.com
      - VUE_APP_EXPLORER_URL=https://example.com
      - VUE_APP_COMPILER_URL=https://example.com
      - VUE_APP_BACKEND_URL=https://example.com

export VUE_APP_NETWORK_NAME="balabola network!"
export VUE_APP_NODE_URL=https://example.com
export VUE_APP_MIDDLEWARE_URL=https://example.com
export VUE_APP_EXPLORER_URL=https://example.com
export VUE_APP_COMPILER_URL=https://example.com
export VUE_APP_BACKEND_URL=https://example.com
npm run build

This PR is supported by the Æternity Crypto Foundation

Need to handle VUE_APP_REMOTE_CONNECTION_BACKEND_URL as #1512 has troubles

I've restored the ability to set network using env variables in vue cli, and added support to set backend url though env variables in docker.  Switched to envsubst. It looks simpler at the end.


extra/variants leaks disposables

help-lint-all reported this somehow.
resource:extra/variants/variants-docs.factor: 39

Asset: T{ link f match }

41 disposable(s) leaked in example

I get those sometimes when running help-lint, but its not consistent.
Run "variants" help-lint a couple times and the error goes away... not sure whats going on.

So I looked at the leaks and they are:
HS{ ~line~ ~single-texture~ ~single-texture~ ~single-texture~...

So basically, UI stuff that is being cached... so we should either close this bug report, or maybe ignore them in the help-lint?

Could do something like this:
diff --git a/basis/help/lint/checks/checks.factor b/basis/help/lint/checks/checks.factor
index 0133e3b..2bd523f 100644
--- a/basis/help/lint/checks/checks.factor
+++ b/basis/help/lint/checks/checks.factor
@@ -29,7 +29,11 @@ SYMBOL: vocab-articles
             ] keep
             last assert=
         ] vocabs-quot get call( quot -- )
-    ] leaks members length [
+    ] leaks members
+    [
+        class-of vocabulary>>
+        { "core-text" "opengl" "ui" } [ head? ] with any?
+    ] reject length [
         "%d disposable(s) leaked in example" sprintf simple-lint-error
     ] unless-zero ;

Do we wanna do something like this? I can figure out what exact classes to filter out, and probably make an auxiliary word that doesn't do the filtering as well for GUI tests.

@bpollack go for it!

I filtered out specific classes on mac, linux, and windows (by "name" so it's not perfect), but better than filtering by vocabulary.  However, there are probably tests where we wouldn't want to filter them out, but....

Should be "fixed".


Fix FAI script reference for building buster images

Now it points to the correct buster repository.

@zmarano that's the commit from your accepted merge request on debian-cloud-images

/ok-to-test


Add Create, Edit, Delete for LifeCycle Policies

Instead of only being able to view lifecycle policies, this commit lets you edit them, create new ones and even delete them.
Includes #943. Can serve to replace it.
Depends on changes to the backend: https://github.com/opencast/opencast/pull/6139. These changes are currently pointed at develop.
To test this, you'll need an Opencast with backend changes mentioned above.
Demonstration:
Bildschirmaufzeichnung vom 2024-12-04 10-45-28.webm

@Arnei I just tried to spin up a test container via podman as noticed above, but unfortunately it fails to start:
~$ podman run --rm -it -p <IP_ADDRESS>:3000:3000 ghcr.io/opencast/opencast-admin-interface:pr-1004

><EMAIL_ADDRESS>start
> vite --host <IP_ADDRESS>

/admin-interface/node_modules/rollup/dist/native.js:63
		throw new Error(
		      ^

Error: Cannot find module @rollup/rollup-linux-x64-musl. npm has a bug related to optional dependencies (https://github.com/npm/cli/issues/4828). Please try `npm i` again after removing both package-lock.json and node_modules directory.
    at requireWithFriendlyError (/admin-interface/node_modules/rollup/dist/native.js:63:9)
    at Object.<anonymous> (/admin-interface/node_modules/rollup/dist/native.js:72:76)
    ... 3 lines matching cause stack trace ...
    at Module._load (node:internal/modules/cjs/loader:1104:12)
    at cjsLoader (node:internal/modules/esm/translators:346:17)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/translators:286:7)
    at ModuleJob.run (node:internal/modules/esm/module_job:234:25)
    at async ModuleLoader.import (node:internal/modules/esm/loader:473:24) {
  [cause]: Error: Cannot find module '@rollup/rollup-linux-x64-musl'
  Require stack:
  - /admin-interface/node_modules/rollup/dist/native.js
      at Module._resolveFilename (node:internal/modules/cjs/loader:1225:15)
      at Module._load (node:internal/modules/cjs/loader:1051:27)
      at Module.require (node:internal/modules/cjs/loader:1311:19)
      at require (node:internal/modules/helpers:179:18)
      at requireWithFriendlyError (/admin-interface/node_modules/rollup/dist/native.js:45:10)
      at Object.<anonymous> (/admin-interface/node_modules/rollup/dist/native.js:72:76)
      at Module._compile (node:internal/modules/cjs/loader:1469:14)
      at Module._extensions..js (node:internal/modules/cjs/loader:1548:10)
      at Module.load (node:internal/modules/cjs/loader:1288:32)
      at Module._load (node:internal/modules/cjs/loader:1104:12) {
    code: 'MODULE_NOT_FOUND',
    requireStack: [ '/admin-interface/node_modules/rollup/dist/native.js' ]
  }
}

Node.js v20.18.1


docs:

❓ Type of change

[x] 📖 Documentation (updates to the documentation, readme or JSdoc annotations)
[ ] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
due to the:
https://github.com/nuxt/nuxt/pull/22157
lang="ts" By default, it was placed in the content of the document
📝 Checklist

[ ] I have linked an issue or discussion.
[ ] I have added tests (if possible).
[x] I have updated the documentation accordingly.

Thanks for the contribution! I'd only change it in case we use TS in there though so people could copy and paste it without using TS as well ☺

Please see the link below:
https://github.com/nuxt/nuxt/pull/22157

Without lang="ts" a lot of the magic just won't work. I think it's safe to use even if people aren't writing actual TypeScript. What do you think @manniL?

Fair point. Let's stick with it then 👍


How to setup Dual Monitor

I have a laptop with i7 10750h and 2070 max-q and it doesnt detect my second monitor i followed https://wiki.hyprland.org/Nvidia/

Checkout this too https://wiki.hyprland.org/Configuring/Monitors/

Other thing is there a way to change the hour from the top bar?

sometimes didn't show the pop up or not working the restart, etc

Make the script executable using chmod. I think I missed that one in readme.

Other thing is there a way to change the hour from the top bar?

https://github.com/PROxZIMA/.dotfiles/blob/11fe8002ff1018ec7676e4e80670235033a78b7d/.config/waybar/config.jsonc#L231
Change the %H to any other relevant formatter.

thanks


BUG: Player no longer collides with enemies/walls/out of bounds

As teh title says, Player colision stopped working, enemies work still.

That's on me - I replaced the existing player movement code with a call to MoveEntinty(), which wasn't implemented to properly handle collisions.


Add JObject support for SQL trigger

Closes https://github.com/Azure/azure-functions-sql-extension/issues/352
Closes https://github.com/Azure/azure-functions-sql-extension/issues/353
Closes https://github.com/Azure/azure-functions-sql-extension/issues/354
Added ProductsTrigger sample for JavaScript, PowerShell, and Python.
Created a separate issue to track adding tests for all languages.

@lucyzhang929 Switched this to target release/trigger branch, should be good to go now but not a bad idea to wait for PR run to complete just to make sure


Sample needs updating to use C++/WinRT

This sample uses C++/CX, however in other https://docs.microsoft.com/en-us/windows/uwp/gaming it is recommended that C++/WinRT be used.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: f375db84-d770-3a7c-2a9c-54795b36288e
Version Independent ID: a3ab6f17-0b50-c44a-f7f7-50f5c949b56d
Content: Create a DirectX Universal Windows Platform (UWP) game - UWP applications
Content Source: windows-apps-src/gaming/tutorial--create-your-first-uwp-directx-game.md
Product: uwp
Technology: games
GitHub Login: @stevewhims
Microsoft Alias: stwhi

Hi, @trojanfoe, thanks for filing this issue. I've added a work item to my backlog to port this sample from C++/CX to C++/WinRT.  As a game, the code is relatively "simple", as the topics imply. But relative to typical sample apps, I'd say this one is particularly large and involved, so I can't say exactly when I'll get around to porting it.
Since I have a work item to track this task internally, I'll go ahead and close this GitHub issue. You can still reply to a closed issue; and you can always re-open one if you feel it's been closed in error.
Thanks!
Steve

UPDATE: The ported code is currently in code review and is having corrections made to it.

UPDATE: I've now updated all the snippets in all the topics that show code from the Simple3DGameDX sample app. I've replaced the former C++/CX snippets with C++/WinRT and the sample app itself is also ported. Details in the topics.
Thanks!
Steve


fix : add non-root user in docker file

The user in Optimus Dockerfile when configured/overridden to be non-root user will cause file permission issue as default user in alpine is root.
In order to support plugin installation on server boot, default non-root user is added to Dockerfile.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 77.064%

Totals

Change from base Build<PHONE_NUMBER>:
0.02%

Covered Lines:
7758

Relevant Lines:
10067

💛  - Coveralls


Cody does not start anymore

IDE Information
Latest Idea, Cody 7.0.13
Bug Description
After upgrade (from 7.0.6 I think), Cody does not start anymore. Clicking on the Cody icon opens panel with 3 color dot spinner, and that spinner stays there.
Additional context
No response

Duplicate of #2447


BoM Upload: Automatic Part match using name or IPN

@SchrodingersGat Starting to look into the BoM upload flow, I actually like what I see so far. This is a little improvement to attempt to 1-o-1 match the Part field using the allowed_parts set and part name. In my opinion, matching by IPN would be more efficient than using the part name so I also added it (in that case name matching isn't processed).

I like this, lookup by part IPN is a great addition.
I'm currently doing some work on improving the "template" file used to specify which columns names are used.
I'll merge yours in first so we do not get out of sync.
Cheers

See the updates here - https://github.com/inventree/InvenTree/pull/909

@SchrodingersGat Wan't me to hold off any more changes related to BoM management right now? I saw you also merged multi-level BoM update. I was interested into potentially leveraging it for showing supplier parts under each "Component" part that has one or more supplier parts. Also would like to improve the export supplier data, not just part data.

I'm happy for you to keep working on this, the multi-level BOM was something I needed urgently for my work, but I am not planning on any new development right away.
Cheers!

Ok sounds good!


Client Allocation Request for: psh0691

Client Allocation Questions
Core Information

Name: psh0691
Website / Social Media:
DataCap Requested: 5TiB
Addresses to be Notarized: f3u5l74k5b3kh4drszygkaowx7rx3fv4pcqh7c7yn2k6xgvtdcb344v3cyfvzssropkqr7bqxnkyuhyqmoez6q
Notary Requested: philippbanhardt

Hey @psh0691 - thanks for your request. Can you kindly add more information / context here on:

yourself , e.g. include links to social media / news mentions etc
your history working on IPFS / Filecoin, e.g. notable contributions to the community, type of engagement shown over time etc
type, size, source and your relationship with the data you (and by extension other Discover participants) are looking to store on Filecoin, e.g. public data vs private data, who owns the data / license, etc
how you intend to store the data on Filecoin, e.g. redundancy, location / miner preferences, etc

Thanks

social media
https://band.us/band/69190040
https://www.youtube.com/channel/UC6zgRpEUuh-_V7HUJdtpn_g/featured
(  IPFS / Filecoin Introduction video Korean subtitles)

filecoinproject.slack.com Activity
Publish a collection of lotus/lotus-miner commands
https://filecoinproject.slack.com/archives/CQLDFHAJY/p1607501420044100
Operating nodes from test net, 100Fil compensation the day before mainnet (f022309).

The data I want to save is released as a video of the Bible lecture.
http://www.jbch.org/kor/research/list.php?sCode=10r12r11r14
http://www.jbch.org/kor/research/list.php?sCode=10r12r11r15

social media
https://band.us/band/69190040
https://www.youtube.com/channel/UC6zgRpEUuh-_V7HUJdtpn_g/featured
(  IPFS / Filecoin Introduction video Korean subtitles)

filecoinproject.slack.com Activity
Publish a collection of lotus/lotus-miner commands
https://filecoinproject.slack.com/archives/CQLDFHAJY/p1607501420044100
Operating nodes from test net, 100Fil compensation the day before mainnet (f022309).

The data I want to save is released as a video of the Bible lecture.
http://www.jbch.org/kor/research/list.php?sCode=10r12r11r14
http://www.jbch.org/kor/research/list.php?sCode=10r12r11r15


RKE2 Cluster not deleted from Home

Rancher (2.6.1) running on top of RKE2 cluster.
I Have deleted cluster (prod-caas) from Cluster Management.
But from Home its not delete, as result not able to create cluster same name.

Got a fix using https://github.com/rancher/rancher/issues/34650#issuecomment-956555419


[No QA] Fix missing app icon for iPad

@roryabraham
Details
This provides the missing iPad icon.
Fixed Issues

Fixes GH_LINK
Tests
N/A
QA Steps

Hey @AndrewGable, this PR is meant to fix this deploy failure, do you have any experience with this type of failure / any guidance on how to test locally?

Okay, let's just try this and hope it works 🤞🏼

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

@shawnborton - I am not sure the @3x is required. It's throwing a warning now saying it's unassigned/unused. Would you mind making a follow up PR? Thanks!

Can do. The @3x image was already there so we would have been getting this warning for quite some time now is my guess.

🚀 Deployed to staging in version: 1.0.32-0🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

Looks like it deployed OK! Main error was fixed 🎉

@AndrewGable great news! We found another race condition 😭😭😭🤮
Here's what I think happened:

The StagingDeployCash was locked, then immediately after this PR was merged
The StagingDeployCash deploy (1.0.32-0) began first, but included the changes from this PR (I think that's good, because it got to keep the last-minute changes from this PR). This happened because this PR was merged to main while the action's runner was starting up and it hadn't checked out the repo yet.
The preDeploy from this workflow then found that the StagingDeployCash was locked, so it skipped the deploy (1.0.31-5). Also good.
However, because the StagingDeployCash was locked, it commented on the PR saying that it wasn't going to be deployed, but it was already in the process of being deployed in 1.0.32-0.

Ultimately nothing too bad happened here, it's just that this comment was a lie:

Will your future version PR fix this one?

I don't think so actually.


Powershell shortcuts/intellisense doesn't fully work

A very useful feature of Powershell terminal is being able to get all commands that start with a particular string just writing the initial letters and clicking Ctrl-Space... that give us a bunch of similar commands to select from. That feature seems missing in new Windows Terminal.
Example: typing ConvertTo

ctrl+space not working is a known issue, see:
/dup #530 #879 #2556 #2865
You can always rebind the menu complete action to another keychord.


Set initial value for Dropdown

Would it be possible to allow gooey_options = {"initial_selection": n} for the Dropdown widget?

Nevermind - I didn't realize there was a default parameter.


[UI] Sixpack dashboard table formatting broken

Lolz, the test name is "icon-nav," getting messed up by the following css:


Escaped apostrophe to make it a valid string

@SteSinger : Thanks for your contribution! The author(s) have been notified to review your proposed change.

@SteSinger : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Game "freezes" upon entering unpowered dimension

This is the first and only time encountering this issue, and at present I'm not entirely certain what's causing it.
I accidentally teleported to an unpowered, already-deconstructed dimension, and within seconds the game appeared to freeze. The odd thing though is that it does not appear to be actually frozen; the game behaves as though its stuck processing something heavy, and ticks every once in a while. My phase generator appears to drain at the expected rate, which I'm guessing is a result of the "time since last tick calculation", so I can tell it is at least occasionally updating, but inputs like mouse movement and keystrokes are often lost, especially if there's more than one.
I am using a modified FTB Infinity 1.12.1 with a few additional mods included (Galacticicraft, mekanism, meteorcraft).
The dimlets included, to the best of my recollection, were: liquid steam, biome deep ocean, terrain flat, time morning, sky bright day, and possibly the McJty dimlet. (I realize the flat terrain screws up the liquid; this was one of my many experiments as I've only recently started playing around with this mod.)
I can provide more information, or the world itself if needed, later this evening. Let me know if there's any additional information required (or whether I'm just doing something boneheaded).

This kind of report is nearly impossible for me to debug :-/
It certainly does not occur in all dimensions though

Thats correct, it does not occur on all dimensions. This is the first time encountering this.
I am a developer too; I agree this is not a lot to go on. I will attempt to dig deeper and see if I can find some kind of more specific information.