Secrets with a plus sign not recognized

Summary
Testing the Jira plugin with a curl is a common way of figuring out if it's working. However, if there is a + in the secret it is not recognized by the plugin.
Environment

Mattermost Server: 5.8.0

Steps to Reproduce

Edit config.json so that the PluginSettings.Plugins.jira.secret value has a + in it. For example: KBcCZm_JWQWM2WD9tr5IMo+fUo5zGJwS
curl the URL:

curl -XPOST "https://mattermost.example.com/plugins/jira/webhook?secret=KBcCZm_JWQWM2WD9tr5IMo+fUo5zGJwS&team=a-team&channel=town-square

Expected Behavior
curl command outputs this:
EOF

Observed Behavior
curl command outputs this:
You must provide the configured secret

Recommended Fixes
Scrub secrets of + character when generating them.

Right. We can (must?!)  URI-encode the secret.
BTW, your secret should be fine if you replace + with %2B in that URL

Resolved by https://github.com/mattermost/mattermost-plugin-jira/pull/53, to be included in Jira v2.0 build next month.


update link

https://github.com/MicrosoftDocs/OfficeDocs-SharePoint/issues/2622

@JohanFreelancer9 Copy editing is needed for this PR. Thanks.

@VLG17 - Please make the requested changes

@MikePlumleyMSFT PR has been copyedited and is ready for final review, could you please check and merge? Thanks!


Allow hash-params for the connection

Sequel.connect supports Hash for the connection params so should rom-sql.
require 'rom'

connection_params = {
  adapter: 'postgresql',
  host: 'myhost',
  database: 'development',
  user: 'foo',
  password: 'bar',
  schema_search_path: 'myschema, public'
}

ROM.container(:sql, connection_params)

Wasn't sure if I could just remove the to_s (which leads to the problem) without any side-effects so I just added another when Statement.
There is no test at the moment as I wasn't quite sure where to put it but if the change itself is ok and you tell me where it would fit best I'll certainly add one.

Thanks for opening this PR.
@flash-gordon wdyt? seems innocent ;)

LGTM 👍

Thanks, I merged it in and added a spec in master


Add hardware accelerator

Obviously this is something that could be done later on since it is not exactly something I'd expect the average user to use. However, tensorflow/Keras makes it very easy to implement parallel GPU training when available. I already have the code to do this cleanly. Its just a matter of how (and if) to implement this.
In principle this can only be a good thing since tensorflow/Keras multi_gpu_model is essentially straightforward (I struggled with it for so long 🙃) if you know what you're doing with it. The only level of parallelism is at the batch level, so everything in Talos could work on top of it.
@mikkokotila thoughts on this? Google.colab already accelerates any training I've seen done with Keras massively without any changes to code whatsoever, but to my knowledge you only get one GPU at a time. People with access to more could experience up to an 8-fold decrease in training time with a feature like this.

I think this is a really great and important addition. Especially if you have already figured out :) I could take an arrayed Tesla instance from AWS to test it out!

multi_gpu_model in the build_model function using the Keras functional api seems to work just fine in talos.Scan when experimental_functional_support=True.
I got a box with 2 cards and both light up when running, so I thought talos already supported this feature.  Is there some other aspect on this that I am totally missing?

@x94carbone thanks for clarifying.  It definitely works.  I monitor gpu load, gpu memory usage, temp and fan speed on both cards and all measures indicate both are in use.  Multi GPU support is the main feature which lead me to talos.
I was using GridSearch prior, but it seemed multi-gpu on gridsearch failed for me.  I suspect the memory leak issue.  I saw the git version of talos had the method to reset the session between model builds to clear GPU memory.  That worked great in talos.  When I have it sent to false I can cause a memory leak error from doing enough runs in talos.  When I set it to true, talos clears the memory each run.  Confirmed by setting allow growth in tensorflow session to true and the memory clears and grows to needed amount before each run starts on both GPUs.

@Manofdesign
The "allow growth" feature that you mention, is it this one:
gpu_options = tf.GPUOptions(per_process_gpu_memory_fraction=0.333)
sess = tf.Session(config=tf.ConfigProto(gpu_options=gpu_options))
This seems like something we need to add as an option for the user directly from Scan(). I will test next few days and add it.

Would this do it:
import tensorflow as tf
from keras.backend.tensorflow_backend import set_session

def max_gpu_memory(fraction):

    '''Sets the max used memory as a fraction for tensorflow
    backend

    fraction :: a float value (e.g. 0.5 means 4gb out of 8gb)

    '''

    config = tf.ConfigProto()
    config.gpu_options.per_process_gpu_memory_fraction = fraction
    set_session(tf.Session(config=config))

...and we call this in the beginning of the experiment, or if clear_tf_session is set to True, then we do it for every permutation of the experiment?
I'm creating tf_config.py under /utils where similar things would go in the future. So this would be imported as:
from talos.utils.tf_config import max_gpu_memory

@mikkokotila Here is the syntax that I used.  This assumes import keras.backend as K called out earlier.
`
gpu_options = K.tf.GPUOptions(allow_growth=True)
K.set_session(K.tf.Session(config=tf.ConfigProto(gpu_options=gpu_options)))
h = talos.Scan(x=x_train, y=y_train,
x_val=x_val, y_val=y_val,
shuffle=False,
params=p,
dataset_name='Simple_MLP_EmbedFalse_featscaleneg',
experiment_no='2',
model=create_model,
grid_downsample=.01,
last_epoch_value=True,
experimental_functional_support=True,
clear_tf_session=True #very important to prevent memory leak and scan failing
)`
To include the fixed percentage
gpu_options = K.tf.GPUOptions(allow_growth=True, per_process_gpu_memory_fraction=0.5)
As long as clear_tf_session=True is set, it clears the memory on each permutation but remembers the session settings when it starts the next, so I don't think it needs to be inside the permutation loop.
This brings another thought.  The nature of my current experiment only utilizes < 50% on both cards.  GridSearch has an n_Jobs option where you can set the total number of parallel permutations to run at the same time.    Any way to config talos to run parallel permutations.  In that case I think there would need to be more than one session set for each parallel permutation to run in.
I have no idea if this is even possible.  I can do an initial test by setting the per_process_gpu_memory_fraction=0.5 and running two terminal sessions at once to see what happens.  My hope is that both will be running and GPUs will be near 100% usage.

Confirmed.  I can run 2 separate talos.scan sessions with
gpu_options = K.tf.GPUOptions(allow_growth=True, per_process_gpu_memory_fraction=0.5)
K.set_session(K.tf.Session(config=tf.ConfigProto(gpu_options=gpu_options)))

and both run in parallel nearly utilizing full GPU capacity.
It would be awesome if talos.Scan had an N_parallel_jobs option where talos would enable multiple sessions as called out and would feed permutations to the session instance that is ready next.

Thanks @Manofdesign and I agree, this is something we need to take seriously. Would this be something you are comfortable contributing with?

@Manofdesign @x94carbone
As I understand this will be probably the most important think to get right in the roadmap, I'll take a step back and try to dissect.
It seems that here we are talking now about bigger picture of resources use. First, we have two kinds of systems:

CPU based
GPU based

This is quite important, as for some prediction tasks (e.g. batch_size tends to be small) even a low-end CPU can be an order of magnitude faster than high-end GPU based system.
Then we have three kinds of distributions:

a single resource machine (e.g. a single machine with a single GPU)
a multi resource machine (e.g. a single machine with many GPUs)
multi-machine, single-resources (e.g. many machines, each with single GPU)
multi-machine, multi-resource (e.g. many machines, each with many GPUs)

I'm not sure if multi-CPU utilization is as effective out-of-the-box as CPU core utilization is with Keras/TensorFlow, or is it more like multi-GPU case.
In terms of experiments, we have several scenarios:

a single experiment run as a single job
a single experiment run as multiple jobs
multiple experiments run as a single job
multiple experiments run as multiple jobs

I appreciate the fact that multiple experiments run as a single job might not be relevant, but I'm including it for the sake of ontological completeness regarding this topic.
Basically we are left with 2x4x3=12 relevant cases to figure out and make sure that we cover each in a meaningful way. I think the most complex will be "distributed" scenario where we have multiple machines with multiple GPUs.
The other interesting thing here might be (at least for very long runs) to have a switch for automatically choosing a given system if CPU, GPU (or TPU) should be used. For example, I have a case where on Google colab it takes 10s per permutation for CPU, 70s/p with GPU and 40s per permutation with TPU. So it would be very easy for the system to auto-optimize and pick CPU for the experiment without the user having to worry about it.
Thoughts?

@mikkokotila @x94carbone Will try and respond to multiple comments in this one.  Regarding contributing.  I would be very interested in contributing.  The disclaimer I have to include is that I have <1 year experience in Python and Keras and will likely need some guidance and mentor-ship in some areas such as proper code structure and Keras.
I like the idea of covering various scenarios.  I do wonder of the scope should be limited.  I think prioritizing multi GPU local and distributed GPU (multi machine X single or multi GPU) while allowing multiple jobs in parallel would provide the most bang for effort buck.  Especially if it could be easily integrated with Horovod.
I have never ran into a Keras model where the CPU performed better than the GPU.  Would be interested in the details of the Google colab scenario where the CPU was out performing GPUs from a learning perspective.  My experiences are on a local machine that has either a 1050ti or two 1060s.  Typically I see my GPU performs 10x faster than my CPU.  When running a GPU enabled session on Google Colab, it seems on par with my local 1050ti.
My vote would be to prioritize the GPU scenarios first and if the community really screams for distributed CPU functionality, tackle it then.
In order to auto optimize wouldn't the system have to run a set of permutations on each compute scenario to see which is best?  Then we would have to be confident that sampling of permutations was representative enough of the complete set that the best compute scenario was chosen.  Trying to wrap my head around the workflow that would always lead to the best auto selected choice.
By the time I am ready to run parameter sweeps on a model I feel that I already know the compute scenario I want to use based on initial testing.  Just being able to manually select the scenario would be sweet.
Back on contributing.  What do you suggest as the first step?

@mikkokotala I would be happy to test those scenarios.  My multi-GPU box is tied up for a few days running a big experiment, but can run the force_cpu, single job-single-gpu, multiple job-single-gpu scenarios while that is going.  I am working to get Horovod installed and working on multiple machines to work with Keras.  One that is up and running I can make an attempt to look at the Horovod implemetnation.  As far as providing code, should I create a separate branch that can be merged later down the road?

@Manofdesign wonderful, and yes, you could make your own for, and then make PR to daily-dev.
In the meantime, I got myself one multi-GPU system I'm setting up now, in the next 2-3 weeks should be able to have another system (once 2080 Ti is available) which will also have a very high end CPU so it will be a good platform to test various scenarios CPU vs. GPU (as on a system like that the GPU should theoretically speaking never be bottle necked by CPU).

I ended up spending 2 weeks just on benchmarking to get to the bottom of the matters. I have one system with 2080Ti, one system with 2x1070Ti and then I switched the cards between the machines (so different CPU) and did with both overclocked CPU and not. The results ended up being a lot so it will take time to get it out in some meaningful way. In the meantime, generally speaking CPU is always better than GPU for smaller models with smaller batch sizes. The other important insight is that generally speaking 2x a given GPU needs a special case before you get 2x the compute power. In fact, in many cases 2x 1070Ti is worse than 1x 1070Ti. Also sometimes 1x 1070Ti is better than 2080Ti (on the same CPU). Some of the more consistent things I found in the results was that using a tensorflow optimizer inside TFOptimizer wrapper is much faster than same optimizer as Keras optimizer (even both are used in Keras the same way). The other thing was to either compile TF from source, or use Conda instead of pip. For LSTM model, obviously, CudnnLSTM is 10-20x faster than LSTM, so that was obviously the single biggest factor decreasing train time

Those results sound very interesting.  Would love to see the details of the TFOptimizer wrapper vs the Keras optimizer in boosting performance.  Any place to see more details of the experiment?

@Manofdesign sorry for not coming back to you on this. I still did not write a report about it, will try to do it over the next few weeks and share it with you. Closing here as the capabilities have been implemented.


Questions about LIP dataset

Hi, could you please provide the parameter details training on LIP dataset?
Thanks a lot!

We will release the code for LIP and ADE20K on the openseg.pytorch.


Faker::Vehicle API updates

Using https://github.com/devmynd/faker-vehicle as a base, I re-factored the Vehicle faker as requested in #1118.
This also addresses the issue #1127

:+1:  this is needed

So sorry for not having the time to work on this! I will make sure to work on it on this weekend.

@vbrazo Done! 👍

Yes, seems fine. Sorry for not having time to finish this :(

That's fine. You're a great contributor @lucasqueiroz
Thanks for the hard work. See you in the next PR :)


Fix cg-aws-light-stemcell-builder

This process/pipeline is broken.  Builds are failing due to a file glob issue and we also need to remove the conversion to vmdk step that was also removed upstream in https://github.com/cloudfoundry-incubator/aws-light-stemcell-builder/commit/59ac7f7651d5db04b10edf8233dc8fa0abf04629.

[x] Remove the conversion to vmdk
[x] General fixes and cleanup

Related to #105

https://github.com/18F/cg-aws-light-stemcell-builder/pull/4

@dlapiduz we're doing work to ensure this is a lighter fork to maintain, but can you verify that it works and can be closed?

Confirmed working.


Add Paging for VitalSign

Hi Ripple team,
According to #31  here is the pull request for Vital Sign Paging.
Please send me any comment, suggestion or correction you may have.
Old API: /api/patients/9999999000/vitalsigns

New API: /api/patients/9999999000/vitalsigns?offset=1&fetch=3
offset (optional)
fetch (optional)

Best Regards,
Nam Vu from ThinkLabs-VN

thanks @ZuzooVn
Can you explain a little more what this code is trying to achieve please
Can you explain what "offset" does?
Assume "fetch" gets a number of vital signs?
Can you briefly outline the code changes.. 5 files involved I see.
Please note the travis-ci test would fail if this is implemented.. please consider this & what changes would be needed there.
thanks for the effort involved
Tony

Hi @tony-shannon

Can you explain a little more what this code is trying to achieve please

Currently, Ripple fetches all of the vital signs information from EtherCIS via REST API.
However, it quickly becomes obvious that the size of data that is of interest is usually on the order of megabytes and spans thousands of objects. Thus, paged, REST endpoints start to really suffer in terms of performance when a query takes 45-50 seconds to complete and perform 1,000 roundtrips.

Pros:
Standard API
Acceptable performance on small datasets

Cons:
Poor performance on large datasets
Connection latency severely impacts performance
Mobile native application implementation of paging can add technical overhead

Below is our Android Native Application that displays Vital Signs

In recap, a lot of the time, when you're making calls to the  REST API, there'll be a lot of results to return. For that reason, we paginate the results to make sure responses are easier to handle.

Can you explain what "offset" does?
Assume "fetch" gets a number of vital signs?

We used OFFSET FETCH Clause (SQL Server Compact)

OFFSET { integer_constant | offset_row_count_expression } { ROW | ROWS }
Specifies the number of rows to skip, before starting to return rows from the query expression. The argument for the OFFSET clause can be an integer or expression that is greater than or equal to zero. You can use ROW and ROWS interchangeably.
FETCH { FIRST|NEXT }  { ROW|ROWS } ONLY
Specifies the number of rows to return, after processing the OFFSET clause. The argument for the FETCH clause can be an integer or expression that is greater than or equal to one. You can use ROW and ROWS interchangeably. Similarly, FIRST and NEXT can be used interchangeably.

Ref: https://technet.microsoft.com/en-us/library/gg699618(v=sql.110).aspx

Can you briefly outline the code changes.. 5 files involved I see.

We changed 5 files:

vitalsignspaging.sql: Use SQL instead of AQL because AQL does not support Offset and Fetch.
vitalsignspaging.js: Map the returned data from the SQL in  vitalsignspaging.sql.
patientHeadingTable.js: Treat Paging as optional.
spv.js: Add more args which required in patientHeadingTable
headings.js: Cache the Offset and Fetch to Redis or GT.M database

Please note the travis-ci test would fail if this is implemented.. please consider this & what changes would be needed there.

The error came from this commit bd95205022b4aa5603c6a2f4720d8cac51362cd7. @robtweed could you please re-check your commit?

Failures:

OpenEHR Server marand using counts can get Ivor Cox details using AQL
Message:
TypeError: Cannot read property 'resultSet' of undefined
Stack:
TypeError: Cannot read property 'resultSet' of undefined
at Object.processBody (/home/travis/build/RippleOSI/Ripple-Qewd/spec/headings_spec.js:84:22)
at Request._callback (/home/travis/build/RippleOSI/Ripple-Qewd/lib/openEHR/openEHR.js:173:38)
at Request.self.callback (/home/travis/build/RippleOSI/Ripple-Qewd/node_modules/request/request.js:188:22)
at emitTwo (events.js:106:13)
at Request.emit (events.js:191:7)
at Request. (/home/travis/build/RippleOSI/Ripple-Qewd/node_modules/request/request.js:1171:10)
at emitOne (events.js:96:13)
at Request.emit (events.js:188:7)
at IncomingMessage. (/home/travis/build/RippleOSI/Ripple-Qewd/node_modules/request/request.js:1091:12)
at IncomingMessage.g (events.js:292:16)

thanks for the effort involved

You're welcome, we (ThinkLabs) are a product-based startup company specializes in the applications of telehealth and telemedicine in Vietnam.
As a developing country, Vietnam shares the same issue in lack of access to healthcare. The provincial hospitals are lacking more advanced infrastructure and technology as well as high-skilled doctors and healthcare professionals. These factors altogether result in the lack of appropriate care availability in rural and remote areas. These factors also influence patients’ decision to skip district and commune facilities to get treatments at provincial and central hospitals, which results in additional costs such as higher treatment expenses, travel expenses, accommodation expenses for companions etc.
With a lot of potential benefits, Telemedicine services are able to transform the healthcare service delivery in Vietnam. The development of Telemedicine in Vietnam with Ripple Foundation as the pioneer is truly showing hopes for the acceleration of healthcare service in Vietnam. As being on its very first stage in bringing the product to the market, ThinkLabs’s concern is now directed to the adoption of its system.
Our goal is to provide an answer to a big question: How can Telemedicine and specifically Ripple Foundation’s solution being adopted in Vietnam?
Wow, such a long comment! My hope is that more of us will commit our energy to building Ripple together.
Best Regards,
Nam Vu

many thanks Nam Vu,
Appreciate your detailed comment and explanation of the pull request.
Your mission in Vietman is a very important one and we're very pleased to here that  Ripple components may be useful.
In terms of files changes to this repo I have an immediate key question..
Re:  vitalsignspaging.sql: Use SQL instead of AQL because AQL does not support Offset and Fetch.
This would have an impact on this repo.. as we are leveraging the openEHR AQL standard available in EtherCIS from Ripple-QEWD.
3 questions;
1)
Have you explored within EtherCIS.org to check this is the case/explore what other approach you could use to leverage AQL
http://ethercis.org/
https://github.com/ethercis

you may note that we have set up PulseTile UI framework to accept core & plugin modules.
See here
http://www.pulsetile.com/
https://github.com/PulseTile
https://github.com/PulseTile-Plugins
.. would a library of Ripple-Qewd plugins help you in a case like this?
ie where you contribute other mappings?

If you wish to use SQL based persistence rather than openEHR based AQL are you wishing to host your Re:  vitalsignspaging.sql in your own repos.. though obviously we recommend you work to align with openEHR & AQL etc.. a sql based approach is a fork from the openEHR approach we recommend within Ripple

Hi Tony  @tony-shannon

Have you explored within EtherCIS.org to check this is the case/explore what other approach you could use to leverage AQL
http://ethercis.org/
https://github.com/ethercis

We already contacted EtherCIS:
"AQL FETCH NEXT, OFFSET are not yet supported by EtherCIS. A possible workaround would be to use a direct SQL query instead." said Christian
Ref https://github.com/ethercis/ethercis/issues/5

you may note that we have set up PulseTile UI framework to accept core & plugin modules.
See here
http://www.pulsetile.com/
https://github.com/PulseTile
https://github.com/PulseTile-Plugins
.. would a library of Ripple-Qewd plugins help you in a case like this?
ie where you contribute other mappings?

That's a good idea. I will following this tutorial http://docs.pulsetile.com/Plugin_Process.html

If you wish to use SQL based persistence rather than openEHR based AQL are you wishing to host your Re: vitalsignspaging.sql in your own repos.. though obviously we recommend you work to align with openEHR & AQL etc.. a sql based approach is a fork from the openEHR approach we recommend within Ripple

Thanks for your recommendation.  I will check PulseTile Plugins first to make the approaches suitable for Ripple.

thanks @ZuzooVn
Please update us after
T


detox 21rc dependency is "too large" for github without LFS

What happened?
I attempted to run our test suite against detox 21 rc 3. We use yarn berry with .yarn/cache committed to the repository. I was unable to push after committing the update because github has a 100MB limit for files unless git LFS is used. The current dependency comes in at 188MB
remote: error: File .yarn/cache/detox-npm-21.0.0-rc.3-dab1187651-ce95e0ba75.zip is 188.45 MB; this exceeds GitHub's file size limit of 100.00 MB
remote: error: GH001: Large files detected. You may want to try Git Large File Storage - https://git-lfs.github.com.
To github.com:ouihealth/oui-aviva.git
 ! [remote rejected]     e2e-app-detox-21 -> e2e-app-detox-21 (pre-receive hook declined)
error: failed to push some refs to 'github.com:ouihealth/oui-aviva.git'

Please feel free to close out if this is not considered a bug, but I wanted to flag this for you guys. I'm going to try gitignoring the dependency for now so that I can run our test suite and report back with any regressions.
What was the expected behaviour?
No response
Was it tested on latest Detox?

[X] I have tested this issue on the latest Detox release and it still reproduces.

Help us reproduce this issue!
No response
In what environment did this happen?
Detox version: 21.0.0-rc3
React Native version: n/a
Has Fabric (React Native's new rendering system) enabled: n/a
Node version:  n/a
Test-runner (select one): n/a
Detox logs
Detox logs
n/a```

</details>

### Device logs

<details><summary>Device logs</summary>

n/a```

More data, please!
No response

@asafkorem this might be interesting to you

Strange. I will check that.


User controlpanel: search by full name

by now search queries only username / id / email

Will do PR with
https://github.com/plone/volto/blob/63d4d7161422d8b5b751cc2cb42827ad31c2593f/src/components/manage/Controlpanels/Users/UsersControlpanel.jsx#L138-L140
query -> search
after https://github.com/plone/volto/pull/3534 is merged.

@ksuess As I observed, sorting is possible in User Controlpanel by only UserId and not possible by Email & UserName.
So, for an enhancement what would be better to use in User Controlpanel direct multiple input fields or a select input field with multiple options like UserName, UserId and Email to sort users in user Controlpanel.

@MdSahil-oss It's great that you want to care for this!
My personal opinion is that one search field is enough. But of course distinguished sort options on either id or full name would be a comfortable enhancement. Because even the switch from "query for id" to "search for id, email and full name" would be an enhancement, I vote for one single search field. But let's see what others say.
Before you start working on this, please talk to @nileshgulia1 . He is working already on the user control panel. And some coordination would spare you and him some rebasing in between.

Done by #3962


Update to Unifi 5 and pfSense 2.3

Updates Unifi to 5.0.6 and installs FreeBSD packages latest 10.3 release.
Also replace snappyjava version.

This is obviously a nightmare to maintain.  Working on a way to track versions and deps of mongodb, openjdk, etc.
The file packagesite.yaml in the archive http://pkg.freebsd.org/freebsd:10:x86:64/latest/packagesite.txz has the information we need to track automatically.
My shell script-fu is rusty.

I found a JSON shell parser that seems to work on the packagesite.yaml file.
https://github.com/dominictarr/JSON.sh
<EMAIL_ADDRESS>grep '"name":"mongodb"' packagesite.yaml | ./JSON.sh -l | pcregrep -o1 -o2 --om-separator=- '^\["deps"\,"(.*)","version"\]\s+"(.*)"$'
Produces the following dependency list for mongodb:
snappy-1.1.3
v8-3.18.5_1
pcre-8.38_1
Getting closer...

You're doing noble work. This kind of maintenance challenge has had me thinking about whether and how to keep the project moving (which has meant it has not been moving).
Do you anticipate further changes or should I go ahead and test this?

Thanks for the feedback and testing.  I agree with you... whether or not to continue with this project.  I think the package dependency tracking is very doable.
More changes are coming...  which will get us to hopefully dealing with #11 and #12 eventually.


TLS 1.2 Support on Windows 7

I have an excel macro that I use to interact with APIs.  Everything works great... Today I was adding a 2nd API endpoint while working on my W10 laptop - everything worked fine and the API provided expected results.  So, I deployed the revised spreadsheet to my AWS EC2 Server 2008r2 where I run the scripts daily.  The original API still works, but the new API gets all 408 errors.   Very strange.  So I tested the file on on W7 latop - original works, new API gets 408 errors (same issue as the 2008server).  I then tested on my kids W10 desktop, both APIs work perfectly.   ALL are running Office 365.
So, I believe I found a host computer related issue.  To recap, I have 2 endpoints within one Excel macro - both work fine on W10, one returns 408 errors on W7 and Server2008r2.  What could be causing the 408 errors only on the older OS?

408 is a Request Timeout error.
Some thoughts:
a. Run the API query from a browser on the W7 and Server2008R2 machines to check that there is not a firewall issue.
b. Put in Debug statements in your macros to see how long it takes for it to timeout. This might indicate whether it is a real timeout (long) or something else causing it (short).
c. Check that WinHttp / IE patches from Windows Update are the same on both machines.
Otherwise, there is insufficient detail in your description for me to narrow it down further.

Thanks for your response.  Some additional information:

the API connection that is failing is https://api.dropship.com/api/v2/hello - from a browser it connects and returns correctly on all machines (in this case an authentication error)
The 408 is returned in less than 2 seconds always.
From what I can tell, all machines are fully patched.

The code is exactly same to call both API endpoints... so what has me baffled is why one works and the other gets a 408 every time.
Below is my test code (authorization headers have been removed, but the APIs should still respond.  The DSCOtest returns a 408, the TGtest returns a 401 (authorization error).   I run them from the same module.
Any thoughts/insights are appreciated.
Sub DSCOtest() 'returns 408 timeout
WebHelpers.EnableLogging = True
Dim Client As New WebClient
Dim Request As New WebRequest
Request.Method = WebMethod.HttpGet
Client.BaseUrl = "https://api.dropship.com/api/v2/help"
Dim Response As New WebResponse
Set Response = Client.Execute(Request)
Debug.Print "Response:" & Response.StatusCode
Debug.Print "content:" & Response.Content
End Sub
Sub TGtest() 'returns 401 authorization error
WebHelpers.EnableLogging = True
Dim Client As New WebClient
Dim Request As New WebRequest
Request.Method = WebMethod.HttpGet
Client.BaseUrl = "https://api.tradegecko.com/orders"
Dim Response As New WebResponse
Set Response = Client.Execute(Request)
Debug.Print "Response:" & Response.StatusCode
Debug.Print "content:" & Response.Content
End Sub

I'm also getting a 408 for Windows 7 while I get a 401 in Chrome and Postman. Specifically, I'm getting WinHttp 12029: A connection with the server could not be established (Link).

ERROR_WINHTTP_CANNOT_CONNECT
12029
Returned if connection to the server failed.

@MBlumberg73 Do you have any documentation for the API? (I couldn't find any and help returns a 401 :wink:)

Update, here are the docs: https://api.dropship.com/docs/v2/

Thanks for confirming.  Do you have any other OS platforms you can test the
VBA code on?
marc blumberg -<PHONE_NUMBER> x700
mychooze.com - 541.2CHOOZE
Inspiring creative confidence in kids of all ages.
http://instagram.com/choozeshoes http://facebook.com/choozeshoes
http://pinterest.com/choozeshoes
On Tue, Apr 12, 2016 at 8:40 AM, Tim Hall<EMAIL_ADDRESS>wrote:

I'm also getting a 408 for Windows 7 while I get a 401 in Chrome and
Postman. Specifically, I'm getting WinHttp 12029: A connection with the
server could not be established (Link
https://msdn.microsoft.com/en-us/library/windows/desktop/aa383770(v=vs.85).aspx
).
ERROR_WINHTTP_CANNOT_CONNECT
12029
Returned if connection to the server failed.
@MBlumberg73 https://github.com/MBlumberg73 Do you have any
documentation for the API? (I couldn't find any and help returns a 401 [image:
:wink:])
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/VBA-tools/VBA-Web/issues/222#issuecomment-208909844

Update:  I have tested the CURL via the command line (captured from execute class), and it works on W7 - but fails via VBA.  I can send you the curl raw line with the token for your testing if you provide an email address.

@MBlumberg73 I tried Request.Insecure = True, Request.EnableAutoProxy = True, using Chrome's User-Agent, using the IP address directly, explicitly setting the port, and looked into additional WinHttp Options (although I didn't see anything that seemed relevant) and still couldn't get it to connect on Windows 7. I don't have any other OS platforms to test on at the moment (my Mac died on me). I started working on using Fiddler to investigate what may be going on, but haven't gotten it working just yet, I'll investigate further this evening if I have time.

Try a curl from the command prompt:
curl -i --connect-timeout 200 --max-time 600 --insecure --location -H "User-Agent: VBA-Web v4.0.19 (https://github.com/VBA-tools/VBA-Web)" -H "Content-Type: application/json" -H "Accept: application/json" -H "Content-Length: 0" -X GET -d "" "https://api.dropship.com/api/v2/hello"
This should return an unauthorized.  But the same request via VBA gets a 408.

Hmm, using curl from git bash, I'm getting the following:
curl: (35) Unknown SSL protocol error in connection to api.dropship.com:443
Adding --verbose, I get:
* timeout on name lookup is not supported
* About to connect() to api.dropship.com port 443 (#0)
*   Trying <IP_ADDRESS>...
* connected
* Connected to api.dropship.com (<IP_ADDRESS>) port 443 (#0)
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connetion to api.dropship.com:443
* Closing connection #0
curl: (35) Unknown SSL protocol error in connection to api.dropship.com:443

$ curl --version
curl 7.26.0 (i686-pc-mingw32) libcurl/7.26.0 OpenSSL/0.9.8x zlib/1.2.7

Looks like a pretty old version (2012) so that may be affecting it. Also tried --sslv2 and --tlsv1

@timhall small update.  I have notified the provider that they might have a ssl cert config issue (https://www.ssllabs.com/ssltest/analyze.html?d=api.dropship.com).  It is definitely part of the issue, but still doesn't explain why curl insecure works and VBA-Web does not on the same machine.  Have you had a chance to investigate further?  Thanks.

Wow, cool SSL tester. The multitude of "Server closed connection" in the handshake simulation seems like the issue to me. My guess is that they are TLS 1.2-only which as far as I know has issues with WinHttpRequest that I've invested somewhat in the past, but will look at more.

@timhall correct, they confirmed that they are TLS 1.2-only.  It is odd that WinHttpRequest works for this on a W10 machine, but not other platforms.

I've looked into it a little further and found this: https://msdn.microsoft.com/en-us/library/windows/desktop/aa384066(v=vs.85).aspx#WINHTTP_OPTION_SECURE_PROTOCOLS

By default only SSL3 and TLS1 are enabled in Windows 7 and Windows 8. By default only SSL3, TLS1.0, TLS1.1, and TLS1.2 are enabled in Windows 8.1 and Windows 10. The value can be a combination of one or more of the following values.

I've tried setting the option to use TLS 1.2 and it throws an error in Windows 7:
' (in WebClient.PrepareHttpRequest)
' TLS 1.0 (works)
web_Http.Option(web_WinHttpRequestOption.web_WinHttpRequestOption_SecureProtocols) = 128

' TLS 1.1 (fails)
web_Http.Option(web_WinHttpRequestOption.web_WinHttpRequestOption_SecureProtocols) = 512

' TLS 1.2 (fails)
web_Http.Option(web_WinHttpRequestOption.web_WinHttpRequestOption_SecureProtocols) = 2048

From what I've seen/heard, this may just be a limitation of the WinHttp COM support in Windows 7. I received an email with an alternative approach that uses the WinHttp dll directly that should fix this, I'll dig it up and see what can be done.

Here is a MS KB article that was able to fix an issue i was having with trying to access a site using TLS 1.2 on Win7.
"This update provides support for Transport Layer Security (TLS) 1.1 and TLS 1.2 in Windows Server 2012, Windows 7 Service Pack 1 (SP1), and Windows Server 2008 R2 SP1."
https://support.microsoft.com/en-us/kb/3140245

Awesome! I was tempted to write this off as not fixable, this is great news. I'll be sure to add a link to that in the docs/wiki.

Thanks @bl4met !!!  I went back to some W7 machines and W2008R2 server and tested the code that works on my w10 machines....   They NOW work on them without issue.  The update had previously automatically installed and... problem SOLVED!!!  Thanks!

Maybe I'm out of wave or it's been a long time since the last message ... I was needing to establish an http connection through the TLSv1.2 protocol and finally I have achieved it through this code ...

Private Function PostCheckTLS() As String
    On Error GoTo Error_PostCheckTLS
    Dim oHTTP As Object 'WinHttp.WinHttpRequest
    Dim strResponse  As String
    Set oHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
    Call oHTTP.Open("POST", "https://tlscheck.wubook.net/", False)  ', gwiUserName, gwiPassword)
    oHTTP.Option(9) = 2048'<----------this is the key, but I don't know really what it does.. :)
    DoCmd.Hourglass True

    SysCmd acSysCmdSetStatus, "Comunicando https://tlscheck.wubook.net/"
    Call oHTTP.Send("")
    strResponse = oHTTP.responseText
    Set oHTTP = Nothing
    PostCheckTLS = strResponse
    MsgBox strResponse, vbInformation, "H4 - Abauntz software"
Salir_PostCheckTLS:
    SysCmd acSysCmdClearStatus
    DoCmd.Hourglass False
    Exit Function
Error_PostCheckTLS:
    Select Case Err
        Case Else
            MsgBox "Error nº " & Err & " en PostCheckTLS" & vbCrLf & Err.Description
            Resume Salir_PostCheckTLS
    End Select
End Function

Sorry, I really was out of wawe and the proposed solution worked but only in windows 10. In windows 7 I get an error in the assignment oHTTP.option (9) = 2048.
I have updated the operating system to windows 7 + SP1 and applied the update kb3140245-x64 and the MicrosoftEasyFix51044 but it still gives the same error. Do you know of any possible solution?
Thank you very much
Lorenzo

Just curious since the fixes appear to apply to the registry, what's the reply from the server if you just leave out setting the option?


Support Cassandra 4.1 as a persistence backend

Now that Cassandra 4.1 is generally available, add a C* 4.1 persistence backend implementation for Stargate.

I am currently running C* performance tests using k8ssandra-operator that would need to run the latest C* v4.1, which has the following Paxos v2 bug fixes:

fix of the ContentionStrategy backoff and Clock.waitUntil, as per this Git commit;

fix for the WriteTimeoutException when using a single datacenter, as per this Git commit.

So, it would be great to have Stargate compatible with the latest k8ssandra-operator (v1.4.1).

My assumption is that this would require creating a new persistence module persistence-cassandra-4.1, and that we'd continue to support the persistence-cassandra-4.0 module to match the schedule published by the Apache Cassandra project. This has implications for a variety of areas like adding the module to CI testing and publishing Docker images.
Since the K8ssandra project has not upgraded to Stargate v2, there's an argument for adding this new module to both the main (v2) branch and to v1 - as much as we'd like to encourage forward motion.

Created #2609 before realizing there was this one already. But TL;DNR; at least 2 breaking changes between 4.0 and 4.1 APIs (note: https://fossies.org/diffs/apache-cassandra/4.0.7_vs_4.1.0/ has helpful diff):

LocalAwareExecutorService renamed as LocalAwareExecutorPlus -- seems like possibly mechanical change, easy to do
SchemaChangeListener was changed to interface (from (abstract?) class); but more importantly, completely changed to be typed, taking typed parameters instead of Strings. Need to change 2 implementations.

I think it needs to be new one since APIs we use are not all compatible between 4.1 and 4.0 so it is not (I think) possible to have one backend that would work with both C*4.0.x and 4.1.x.
But it can probably be bootstrapped by copying 4.0 backend and making modifications from there.

Any updates on this one? Cassandra 4.1 was first released in December 2022. Does this affect both Stargate v1 (EOL) and also Stargate v2 (maintained)?

Hi all. Any updates on this one? Looks like Cassandra 4.1 was first released back in December 2022. Does this affect both Stargate v1 (EOL) and also Stargate v2 (maintained)?

Closed by #2711

Hi all. Any updates on this one? Looks like Cassandra 4.1 was first released back in December 2022. Does this affect both Stargate v1 (EOL) and also Stargate v2 (maintained)?

Hi @mamccorm - we added this persistence module on the v2.1 branch a few months back but apparently did not link the PR to this issue.


[Feature Request] It is recommended that refresh function be added to paging component

Existing Component
是
Component Name
pagination
Description
It is recommended that refresh function be added to paging component

Sorry, we have no plan to support this.


Remove println() from Production code

Can I propose removing this line, as it spams the logs in production applications.
It simply removing it is not acceptable, then maybe some form of configurable logging framework would be useful?
(Great library BTW!)

Thanks. It was probably left over from development.


Automate swarm test - start service with restart_policy

[To be discussed]
Start service with restart_policy:

In swarm cluster, start service with restart_policy: always using vsphere volume
Kill VM
Swarm should restart container in another VM and disk should be detached from original vm
verifies the volume is attached to new VM

The test scenario is not finalized yet and needs further discussion to clarify. Not a mustfix for now.

as per offline discussion this is not valid scenario marking this invalid and closing now.


[ENH/DOC] More-automated installation process

Contributes to addressing #347

Added make install target.
Added corresponding contributing documentation
Updated contributing documentation in other ways

@ericmjl

no thx

@ericmjl


Int - Bit ops

Bit operations on Int, in preparation for implementing Integer trait.

@tarcieri this is the next PR ready for review. I am looking forward to your input!

@tarcieri ping :smile:

@lleoha IMHO, I see no added value in supporting logical (=unsigned) right shift on a signed integer: it could be confusing for users, and the difference is quite subtle.
Moreover, when logically shifting-right a negative value, you get some bizarre behaviour. To illustrate with an i8:
-122i8.logical_shr(1) = 60. It is not even abs_div_by_2 (which should be 61). I see no reason to support it, but please let me know if you have a use case in which it does make sense!
Moreover, if for some reason you really need the logical shift right, the solution x.as_uint().shr(1).as_int() is still on the table, and it immediately illustrates to the reader something weird is up and that they should pay attention.

@lleoha IMHO, I see no added value in supporting logical (=unsigned) right shift on a signed integer

I'm sold :).
Let's not add it then.


Protect GraphQL server with Token

Should be managed in a similar way as in jupyter notebooks.

Given v3 restructuring, this will be handled downstream


adds explaination for metadata usage

Adds missing part in documentation that it must be added to the metadata. Otherwise it might be confusing when is shows only links.

Already made this mistake, thanks for this

Ooh, fantastic thank you!


Fix 231

Please check if the PR fulfills these requirements

[x] This PR addresses an already opened issue (for bug fixes / features)
[x] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)
[x] HISTORY.rst has been updated
[ ] bumpversion (minor / major / patch) has been called
[ ] Tags have been pushed

What kind of change does this PR introduce? (Bug fix, feature, docs update, etc.)

Adds new indicator for distribution fit.
Long_name is not scraped from docstring anymore.
changed function signature for fit and fa from arr to da for consistency.

Does this PR introduce a breaking change? (Has there been an API change?)
Yes, signature of fit and fa has changed.

Fixes #231

Pull Request Test Coverage Report for Build 847

18 of 18 (100.0%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.006%) to 92.208%

Totals

Change from base Build 845:
0.006%

Covered Lines:
1278

Relevant Lines:
1386

💛  - Coveralls

Needs to handle missing values more gracefully. Do we just ignore them ?


Order ModelMetadata.Properties by Order then by PropertyName

#1888
add PropertyName to make order not only stable but predictable

slight breaking change from MVC 5 which uses only Order and what System.Reflection provides

/cc @Eilon, @pranavkm, @rynowak

Is there a good reason why we didn't do this change before?

why we decided to hesitate on this in the past

Believe some thought we'd get assurance from the CLR and Roslyn teams. Nothing like that has ever happened.
The current behaviour is basically IL-ordering which tends to match ordering in the source files.

:shipit:

/cc @Eilon

:shipit:

Decided not to fix #1888 offline.


A11y_AzureToolsStorageExplorer_ToggleExplorerPaneTreeView_Keyboard: Keyboard users not able to Open Context menus using shortcut key "Shift+F10".

"Check out Accessibility Insights! - Identify accessibility bugs before check-in and make bug fixing faster and easier."

GitHubTags: #A11y_AzureToolsStorageExplorer; #A11YTCS; #DesktopApp; #Win32; #Benchmark; #A11ySev2; #MAS2.1.1; #Keyboard;
Environment Details:
Application Name: Azure Tools Storage Explorer
Application Version: 1.12.0
Windows10
Repro Steps:

Launch Storage Explorer
Navigate to "Open Connect dialog" pane and Sign in to Azure.
Go to "Manage Accounts" pane and Select the subscriptions you will use. Once selected, click on "Apply" button.
Traverse through the treeview opened on left of screen for whatever tasks or subscription selected.
Navigate to controls present under the "Blob Containers"
Check context menu opens after pressing "Shift+F10" key.

Actual:
Keyboard users not able to Open Context menus using shortcut key "Shift+F10".
Expected:
By Pressing "Shift+F10" key should open a context menu for the controls present under Explorer Pane Tree View section.
User Impact:
Keyboard users and Screen reader users are unable to reliably complete actions that require accessing the context menu, because it is not obvious how to open it from the keyboard.
Recommendation:
https://microsoft.sharepoint.com/teams/msenable/mas/Pages/browse-fixes.aspx
MAS Reference:
MAS2.1.1:
https://microsoft.sharepoint.com/:w:/r/teams/msenable/_layouts/15/WopiFrame.aspx?sourcedoc={8492c4eb-c179-40ae-8777-cd044ed725a2}

We have uploaded repro video of this bug in OneDrive link with name "2613_A11y_AzureToolsStorageExplorer_ToggleExplorerPaneTreeView_Keyboard" please refer the Screenshot for reference.
Please let us know if there is any problem in accessing the link

I don't have access to the OneDrive you are sharing. Plus I cannot reproduce the same issue on my machine. Please attach the reproduce files here so we can access them.

Verified this issue again, The issue is not reproduces ,Hence closing this bug.

@JasonYeMSFT I have Shared a One drive link with you and Matthew. Please let us know if you are able to access the link.

I guess I know what happened for you to think there is a bug. If you click on the blob container node (the one you clicked in the repro video), we automatically open its explorer and transfer the focus to the 1st toolbar button in the explorer. If you then press Shift + F10, it won't open the context menu because the element in focus (toolbar button) doesn't have one. Since this would only happen when you use mouse, we don't think this is an accessibility issue.


Unhandled Exception: MissingPluginException

getting this exception for each and every plugins that I used in my project
Unhandled Exception: MissingPluginException
it is working in Debug and Profile mode but not in Release mode apk.
can anyone help me I need urgent help.
Thanks.

I have the same problem.

Hi @UjjawalPanchal
Can you please provide your flutter doctor -v and flutter run --release  --verbose logs, and a minimal complete reproducible code sample?
Thank you

http://blog.z7ge.com/archives/flutter-missingpluginexception-bu-yao-huang  希望能帮到你

Thanks it is resolved now.


Enable "RNN-like" behaviour for sequences: Each cross-attention gets a different input timestep

Should be fairly simple to implement by just modifying the for loop at the bottom of Perceiver.forward().  Note that x is the latents.
Here's a quick diagram.  My additions are in black.
(I've removed the "weight sharing" from the diagram, but weight sharing would absolutely still be part of this)

The paper talks about using different timestep inputs.  But I don't think the paper talks about using different outputs for each timestep. Maybe that's a bad idea :)
Related to: https://github.com/openclimatefix/predict_pv_yield/issues/35
Background
The ultimate aim is to predict solar electricity generation for a single solar system, over the next few hours, every five minutes.  The input to the "Perceiver RNN" would include:

Recent history (for the last hour or so):

Satellite data (1 image every 5 minutes).  Probably just a 64x64 crop of satellite imagery, centred on the solar system that we're making predictions for.  12 channels.
Ground measurements within the geospatial extent of the satellite imagery:

Solar electricity generation from all solar systems with the region of interest
Air-quality measurements
Rainfall radar
Weather measurements (temperature, irradiance, wind speed, etc.)

Predictions of the next few hours:

Predicted satellite imagery for the next few hours (using SatFlow)
Numerical weather predictions

(I'm really excited about The Perceiver because our data inputs are "multi-modal", and The Perceiver works really well for multi-modal perception!)
So, maybe we'd actually have two "Perceiver RNNs" (i.e. weights would be shared within the encoder, and within the decoder.  But the encoder and decoder would have different weights):

An "encoder" which gets each timestep of the recent history.  The per-timestep outputs would be ignored.  The final output would form the latent array for the "decoder".  The job of the "encoder" is to "perceive" the recent context, e.g. to use ground-based measurements to calibrate how "dark" each cloud is in the satellite imagery.
A "decoder" which gets each timestep of our predictions, and outputs each timestep of the predicted solar electricity generation.

One problem with this is that information can only flow in one direction: forwards.   So it might be interesting to add a self-attention block which functions over the time dimension:

Maybe the initial latent is the embedding for the solar PV system of interest.
At each input tinestep, the PV would be a concatenation of the power, the embedding of the  PV system ID, and the geospatial location.

Why not just let the sequences attend to the full input (and latent) like in the Informer implementation. https://github.com/zhouhaoyi/Informer2020

Could you add a line saying what the output is, please? "Output for timestep 0" is... Is it a single prediction for a fixed lookahead amount? Is it a whole timeseries of prediction from now until now+delta?

Sure!  Here's a "zoomed out" diagram showing the encoder & decoder (but with just two timesteps of history (t-1 and t0) and two timesteps of predictions (t1 and t2).  The idea is that it'll create predictions for every timesteps in a single forward pass.  For example, if we were predicting 2 hours ahead at 5-minute intervals, the decoder would output 24 timesteps at once.

Some more details:
Output of the decoder
Each timestep would specify a probability distribution over normalised PV power (PV power in kW divided by max(PV power)), probably using a mixture density network (I know MDNs aren't very popular, but I've found they work quite well :) ).  This model just predicts PV power for a single PV system at a time.
Inputs
Recent history (the inputs for the "encoder")
Each timestep gets a different byte array with M rows and C columns.

Satellite imagery: 64 x 64 crop of satellite imagery centred over the solar PV system we're making the predictions for.  Each row will be a concatenation of the pixel values for the 12 satellite channels, and position encoding for the geospatial position of the pixel (basically its lat, lon) and the relative pixel position within the image ("near the top left"), and the time of day and day of year.
Solar electricity generation from all solar systems with the region of interest, up to a maximum of, say, 128 PV systems.  Each row will be a concatenation of the normalised PV power, the embedding of the PV system ID, and the geospatial location of the PV system.  We want to include an embedding of the PV system ID so the model can learn that some PV systems behave differently (e.g. due to shading, performance issues, etc.).  The recent history for the PV system we're making predictions for will be included.
Air quality measurements, rainfall radar, and weather measurements will be similarly encoded to the PV power.
Dense, gridded numerical weather predictions will be encoded similarly to the satellite imagery.
Clear-sky irradiance

Forecasts (the inputs for the "decoder")

Predictions of satellite imagery  from SatFlow.  Encoded the same way as the real satellite imagery fed into the encoder.
Dense, gridded numerical weather predictions.
Clear-sky irradiance

The initial values for the latent array
Could be all-zeros; or learnt; or maybe the embedding of the solar PV system we're making the forecast for

See https://github.com/openclimatefix/predict_pv_yield/issues/68 for latest ideas about using Perceiver IO for solar PV nowcasting.


Official Fedora24 support.

Via docker tests in travis.

In noticing Precise build failures becoming fixed by adding the sudo package, I will be running a test on RedHat given the package is available now. Unfortunately the reason why so many packages could be missing is the fact sudo isn't installed.
Path forward for now is:

Add sudo to the top of the installation packages.
Reopen RedHat24 tests
Test
Revert (if required)
Post-pone (if required)

So that idea failed, back to the drawing board...

04bce3616a7822df8f44c49f79e4431dda8ac4d7


chore: deploy 2 edge clients in the local fl-suite cluster

@GerardoGR can you please document the motivation behind adding these clients plus we probably need general docs on develop/kustomize and on those in-cluster clients.

@GerardoGR can you please document the motivation behind adding these clients plus we probably need general docs on develop/kustomize and on those in-cluster clients.

Sounds good. I'll add the motivation in the develop/README.md.


chore: publish the full Storybook build on GH pages

:tada: This PR is included in version 1.15.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Binning with Tuple produces unexpected behavior

Describe the bug
The documentation states using a tuple with 3 parameters should be the start, stop and step_size. But currently, it is assuming it to be the num_steps.
To Reproduce
Steps to reproduce the behavior:
axes = ['dldPosX', 'dldPosY']
bins = [(430,900,1), (430,900,1)]
res = sp.compute(bins=bins, axes=axes)

Expected behavior
The behavior should be tuple(start, stop, step_size). Test currently tests tuple(start, stop, num_steps).

User experience at HEXTOF pushed us to set the preferred triplet to be start, stop, step_size, so this is what I would stick with.
I see however the fast binning method is designed with number_of_steps, so if someone has strong arguments for it, I'm ok with this too.
An alternative option would be to reduce the options for input and ask each as explicit argument, e.g. bin_dataframe(start=0,stop=100,step=1) and bin_dataframe(start=0,stop=100,number_of_steps=101) should give equivalent outputs.

I suppose that we make this consistent for the actual binning functions, and implement different behavior in the class wrapper functions. I find giving the number of points to be more natural, as you have better overview over the amount of data you create...

Using the number of steps in backend makes good sense, then. We just have to have the wrappers designed in such a way that it's clear to the user what they are doing (like Steinn suggested).
I did a fix of the bug in branch 'flash' for now. Since users are already using it, I'll make a PR with that specific change.

We should discuss again what is the most natural thing to expect from the binning function to do.
I would opt for simulating a behavior that you would also have with a program that scans an axis:
if you tell it to start at A, end at B and do N steps, the natural expected behavior would be that the stepsize is (A-B)/N, and that the scan has indeed N+1points, to include the endpoints:
Example: 0, 10, 10 => [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
This is at least how all scanning programs I know work like.
If we want to reproduce this with the binning, I would also expect these points to be the center coordinates of each bin. This results in N+2 bin edges, with the same stepsize and shifted by half a bin:
Example: 0, 10, 10 => [-.5, .5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5]
Still, I would return the bin centers as coordinates for the xarray, as this is the default was coordinates work in xarrays, as far as I know. Also this allows without complication to plot the data after reducing to 1 dimension.
If you agree to this, the question is still how should we interprete, if a list of bins is given: Should this be interpreted as bin edges or as bin centers? I would opt for the second one, but this is inconsistent then with the default behavior of np.histogramdd. In any case, I would return the bin centers again, and I would find it somewhat strange, if the returned coordinates are different from the given ones.
One caviat is that there is not only one way to define the bin edges based on (non-uniform) bin centers. A natural choice is taking the midpoint between centers, but there could e.g. also be logarithmically spaced bins, etc. I think, however, that this is a very edge case we maybe don't have to consider (the question is also then if the bin centers are a meaningful representation).
What's your opinion?

I implemented something similar to my suggestion in PR #98. The only difference is, that I did not include the extension of bins by one. Let's discuss what is the most expected behavior.

generation of the bins
these are the options I se:
Start is typically included.
Stop can be included but not always, as I would give the third parameter priority. The third can be one of three cases:

step size: as in np.arange, stop not included (does not spill over the range) i.e. (0.,3.5,1.) gives np.array(0.,1.,2.,3.)
number of steps: as in your example mimicking scanning setups. stop included i.e. (0,3,3) gives np.array(0.,1.,2.,3.)
number of points: as in np.linspace, stop included, i.e. (0,3,4) gives np.array(0.,1.,2.,3.))

For the first case, one could add the option endpoint=True to force include the last point even if it spills over.
My feeling is the last option is the clearest, as you are requesting the "shape" of the output. But I have nothing against any of the three options. We should however be clear with labeling them as step, step-size and number-of-points.
Labeling of each bin
You are right that its important to lable bins with their center point. In this regard, I would have our binning method return the edges (as it optionally does) as np.histogramdd does. The binning function which returns an xarray should instead have coordinates shifted to the center point for uniform axes (as you suggest).
The default behavior for bins in xarray is handled with the pandas Interval object:
import numpy as np
import xarray as xr

c = np.arange(0,10000,10)
v = np.random.rand(len(c))
xarr = xr.DataArray(v, dims='x', coords={'x':c})

logscale = np.logspace(0,10,11,base=2)
grouped = xarr.groupby_bins('x', bins=logscale).mean()
grouped.coords['x_bins'].values[1]
>>> Interval(10.0, 100.0, closed='right')

If we plot this, even though the scale is logarithmic, it places the data point in the center of the bin. We could keep this behaviour, and stay consistent with xarray. Alternatively, would be nice to implement the use of the Interval object, but it becomes annoying to work with then.

Closed for now, but new issue to discuss which future options to add #123


Repo sync for protected CLA branch

The pull request is created from master637687263808041670 to master to fix git push error for protected CLA branch

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


ltex is not find in path

ltex is not find in path. This plugin working before recent update . Windows 10 OS

Hello! Did you try reinstalling it after pulling the latest plugin version? There was a commit recently that had a breaking change for ltex and clangd, see https://github.com/williamboman/nvim-lsp-installer/issues/387

Ah wait, are you on Windows? The cmd for ltex on Windows turned out to be incorrect in lspconfig, see: https://github.com/neovim/nvim-lspconfig/pull/1628. Until that PR is merged, you can fix this by overriding the command yourself:
lsp_installer.on_server_ready(function (server)
    local opts = {}
    if server.name == "ltex" then opts.cmd = { "ltex.bat" } end
    server:setup(opts)
end)

it's working thanks a lot !!


how to work

Hello everyone,
When I enter the command: Navbuddy, it can provide some information，When the "l" button is pressed, it does not move to the right panel, but instead closes the pop-up box，Is it a question that I understand？

right box is view only, this is expected


WIP: Default Value for WI fields of type simple, list, enum

See https://openshift.io/openshiftio/Openshift_io/plan/detail/35

Codecov Report

Merging #2160 into master will decrease coverage by 0.02%.
The diff coverage is 63.41%.

@@            Coverage Diff             @@
##           master    #2160      +/-   ##
==========================================
- Coverage   69.43%   69.41%   -0.03%
==========================================
  Files         166      166
  Lines       15445    15504      +59
==========================================
+ Hits        10725    10762      +37
- Misses       3749     3766      +17
- Partials      971      976       +5

Impacted Files
Coverage Δ

workitem/field_definition.go
81.3% <100%> (+1.49%)
:arrow_up:

workitem/list_type.go
88.57% <33.33%> (-11.43%)
:arrow_down:

workitem/simple_type.go
79.43% <42.85%> (-2.74%)
:arrow_down:

controller/workitemtype.go
66.17% <45.71%> (-9.28%)
:arrow_down:

workitem/enum_type.go
85.36% <81.81%> (-2.87%)
:arrow_down:

spacetemplate/importer/repository.go
78.92% <94.73%> (+2.03%)
:arrow_up:

workitem/workitem_repository.go
69.9% <0%> (+0.27%)
:arrow_up:

controller/workitem.go
79.26% <0%> (+0.61%)
:arrow_up:

Continue to review full report at Codecov.

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


The Card class does not have a Content or Image property

The Card class property of the SpeechletResponse only has Title and SubTitle properties.
How can one add content and images to the card. The sample project also does not seem to utilise the Card feature.
Please inform if the Card response is fully implemented in this libarary.
I have used the basic intent, session and SpeechletResponse classes and these work well. Thanks for this easy to use library.

I figured I was doing it wrong. You need to use the UI.SimpleCard or UI.StandardCard to get the properties and then assing the Simple or Standard Card to the card property of the SpeechletResponse.


issue_208 remove invalide refresh token and redirect user to the OAuth page for new token

#208

I'll take a look at this after lunch.

So this is focused on the refresh token, but there are other errors that might occur (when an authorization is removed on the Canvas side) before the token needs to be refreshed. Are we going to handle that separately?

Right. This PR only addresses the invalid refresh token problem as reported in #208
If the authorization is removed from Canvas User profile settings, the error message will be "Invalid access token", and that should be reported as a different issue.


Develop

Hello @EdinsonRequena! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file 06_python_avanzado/modulo_1_tipado/clase01-static-typing.py:

Line 13:1: E302 expected 2 blank lines, found 1
Line 17:1: E305 expected 2 blank lines after class or function definition, found 1
Line 50:9: E131 continuation line unaligned for hanging indent
Line 54:2: W292 no newline at end of file


CARDS-1836: As an administrator, I can configure the texts in the Patient Portal Survey UI

A draft PR untill https://github.com/data-team-uhn/cards/pull/1110 is merged.

Rebased on the latest CARDS-1836


feature(issue#90): add an alternative to hgroup

hgroup is not an HTML5 standard, so I added a headings class as an alternative for this tag.
See also issue #90

Hi @AmiralBl3ndic,
Thank you for this solution.
And thank you, @jubishop, for the review.
I like this addition.
We should keep <hgroup> in Pico as it has great support and avoid a breaking change.
This nicely solves the problem of this tag not being included in HTML5 (W3C).
I slightly updated the SCCS code and the example code syntax color in the docs.
I will merge it into master in the next release.

Merci Camille 🇫🇷


It was fine a few days ago, but I suddenly made a mistake today

[ERROR:flutter/lib/ui/ui_dart_state.cc(186)] Unhandled Exception: PlatformException(IllegalStateException, java.lang.IllegalStateException: Unsupported type: 4, null, null)
[        ] E/flutter (21069): #0      VideoPlayerApi.create (package:video_player_platform_interface/messages.dart:189:7)
[        ] E/flutter (21069): <asynchronous suspension>
[        ] E/flutter (21069): #1      MethodChannelVideoPlayer.create (package:video_player_platform_interface/method_channel_video_player.dart:50:31)
[        ] E/flutter (21069): <asynchronous suspension>
[        ] E/flutter (21069): #2      VideoPlayerController.initialize (package:video_player/video_player.dart:329:19)
[        ] E/flutter (21069): <asynchronous suspension>

Hi @yousiwu111, please provide a complete minimal reproducible code sample that we can use to verify this as well as the required steps to reproduce.
Please also provide the output of flutter doctor -v as well as the version of video_player you're using.
For future reference, when you're filing an issue, please fill out the template and provide as much information as possible. Your error message alone is not enough to tell us what is happening.
Thank you

hello @danagbemava-nc thanks for your reply
video_player version is 2.2.3
this is flutter doctor -v  result
[√] Flutter (Channel stable, 2.0.5, on Microsoft Windows [Version 10.0.19043.1586], locale zh-CN)
• Flutter version 2.0.5 at D:\flutterSDK\flutter2
• Framework revision adc687823a (11 months ago), 2021-04-16 09:40:20 -0700
• Engine revision b09f014e96
• Dart version 2.12.3
• Pub download mirror https://pub.flutter-io.cn
• Flutter download mirror https://storage.flutter-io.cn
[√] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
• Android SDK at D:\AndroidSDK
• Platform android-31, build-tools 30.0.3
• ANDROID_HOME = D:\AndroidSDK
• ANDROID_SDK_ROOT = D:\AndroidSDK
• Java binary at: D:\Program Files\Android\Android Studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
• All Android licenses accepted.
[√] Chrome - develop for the web
• Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe
[√] Android Studio (version 4.1.0)
• Android Studio at D:\Program Files\Android\Android Studio
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
[√] Connected device (3 available)
• PRO 7 S (mobile) • 79BMADR5HPRBE • android-arm64  • Android 7.0 (API 24)
• Chrome (web)     • chrome        • web-javascript • Google Chrome 92.0.4515.159
• Edge (web)       • edge          • web-javascript • Microsoft Edge 98.0.1108.56
• No issues found!

I think you should also add some code. And I found that when you have a problem that just suddenly happens without any apparent reason just do flutter create . or if that still doesn't work delete all the folders you didn't edit yourself (lib, test and any assets) and then run flutter create . again.

No registered handler for message. Responding to Dart with empty reply message.

/**

Value returned by {@link Util#inferContentType(String)} for DASH manifests.
/
public static final int TYPE_DASH = 0;
/*
Value returned by {@link Util#inferContentType(String)} for Smooth Streaming manifests.
/
public static final int TYPE_SS = 1;
/*
Value returned by {@link Util#inferContentType(String)} for HLS manifests.
/
public static final int TYPE_HLS = 2;
/*
Value returned by {@link Util#inferContentType(String)} for files other than DASH, HLS or
Smooth Streaming manifests.
*/
public static final int TYPE_OTHER = 3;

throw new IllegalStateException("Unsupported type: " + type);     type == 4

i find the reason ,file type is unknow,i support local file path ,but not distinguish

I set VideoPlayerController.network(formatHint: VideoFormat.other,)
It is useful ,play local video or net video


Warning: The package name passed to find_package_handle_standard_args does not match the name of the calling package

Every time I try to build a ROS package on Arch, this warning comes up at least once:
CMake Warning (dev) at /usr/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:272 (message):
  The package name passed to `find_package_handle_standard_args` (PY_em) does
  not match the name of the calling package (catkin).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  /opt/ros/noetic/share/catkin/cmake/empy.cmake:20 (find_package_handle_standard_args)
  /opt/ros/noetic/share/catkin/cmake/empy.cmake:27 (find_python_module)
  /opt/ros/noetic/share/catkin/cmake/all.cmake:164 (include)
  /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:20 (include)
  CMakeLists.txt:4 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake 3.17 introduces the flag NAME_MISMATCHED to suppress this warning: https://cmake.org/cmake/help/v3.17/module/FindPackageHandleStandardArgs.html

Thanks for the report. Please try the proposed patch from #1093 and comment if that resolves the issue for you.

Thanks for the report. Please try the proposed patch from #1093 and comment if that resolves the issue for you.

Yes, this does resolves the issue. Thanks!


coldcard import: No transactions found & balance is 0 even thought it's not

I decided to try sparrowwallet today for the first time. I was very happy to see that there is a Linux version available. However, after I successfully import my wallet from the coldcard (mark 3 w/ latest firmware) using the instructions from the docs, sparrowwallet doesn't find any transactions when I connect to the server and thinks the balance is 0 (which it's not). It wouldn't be a huge deal if it just didn't show transactions but since it things my balance is 0, it won't let me send any coins.
I tried changing the servers in the preferences but it didn't change anything.

Oh btw, the latest transaction on this wallet is from more than a year ago, in case that matters.

Oh nm. Turns out I should have used "nested segwit" instead of "native segwit". :facepalm:


Bug: multiple instructors colored the "same"

Describe the bug
Two instructors have the same color. (Or perhaps they are very slightly different, but they should be more different.)
Expected behavior
Each instructor should have a different color.
Screenshots

Desktop (please complete the following information):

OS: Mac OS

Additional context
Here's a data export from the user: instructor_color_full_schedule_2022-12-02T11_59_34-05_00.csv
I recreated the issue by loading this (Chrome, Mac OS)

There is a comment in scheduleServices.ts that may be related:
  // TODO: Pre-hashing strings too slow?
  // Hash the strings before seeding the random color because it seemed that similar strings gave similar colors


Duplicate coverage on Windows

Do you want to request a feature or report a bug?
bug
What is the current behavior?
When running coverage and picking up untested files getting 2 entries for every file that is tested.  One with the test results and one that looks like an untested file.
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal repository on GitHub that we can npm install and npm test.
Looks like jest-util is using process.cwd() resulting in c:\ on Windows https://github.com/facebook/jest/blob/master/packages/jest-util/src/index.js#L60
While the existing coverageMap has an entry for the path with C:\ on Windows https://github.com/facebook/jest/blob/master/packages/jest-cli/src/reporters/CoverageReporter.js#L105
The path needs to be normalized to have the same casing in both cases.  So when checking for untested files the 2 paths match and we don't create duplicate entries.
What is the expected behavior?
There should only be one entry per file in the coverage report.
Run Jest again with --debug and provide the full configuration it prints. Please mention your node and npm version and operating system.
node v6.0.0
jest 15.0.2
Windows 10

Thank you! Do you think you can send a pull request with a fix and a test? :)

I would have but I wasn't really sure how to fix this issue.  I found where one of the paths was built in jest-util but wasn't sure where the path for the coverageMaps was built.

Looks like NodeJS 6.4 has resolved the issue with differences in path queries. https://github.com/nodejs/node/issues/6624#issuecomment-243124145  I'm not 100% sure if this will make sure that both getPackageRoot and the Coverage will both work the same way (because I'm not sure how coverage determines path).  But at least I think this resolves the issue I was seeing.

Cool, thanks for the update. It seems like Node.js has a lot of edge cases in environments that are case insensitive (Windows, and Mac OS by default)

I am seeing the same problem in Jenkins build jobs with Node v8.9.4 and Jest 22. On a local PC it works fine. The problem goes away when I downgrade to Jest 21.3.0-beta.

this issue always happening on jenkins build  job(tested against v6 v8), But woking fine on local pc.

I figured out the Jenkins issue. The global Workspace Root Directory and Build Record Root Directory in Jenkins should be the same casing as folder names on the disk. Also, the drive letter in the paths should be capitalized. If you have no access to global settings, the workspace path can be overridden in the job's Advanced/Use Custom Workspace setting.
The issue is the "this._coverageMap.data" hash in the code linked below is case sensitive. Some paths added to the hash are based on paths defined in Jenkins and some are read from the current directory which cause duplicates if the letter case does not match.
https://github.com/facebook/jest/blob/ed95b36bb139aa5d0fea35780ab5043eccf3cdee/packages/jest-cli/src/reporters/coverage_reporter.js#L171

I don't understand, was this issue fixed? If so, what version?


feat: add cpu allocation, description samples for Cloud Run

Description
Addresses b/290538179
Adds examples for Cloud Run description, cpu allocation
Note: If you are not associated with Google, open an issue for discussion before submitting a pull request.
Checklist
Intended location

[ ] Yes, this sample will be (or already is) included on cloud.google.com
Location(s):

https://cloud.devsite.corp.google.com/run/docs/configuring/cpu-allocation
https://cloud.devsite.corp.google.com/run/docs/configuring/description

[ ] No, this sample won't be included on cloud.google.com
Reason:

Review

[ ] If this sample adds a new directory, I have added codeowners to the CODEOWNERS file

/gcbrun


Command to teach users how to use codeblocks (and other discord tools?)

Putting a backslash before the first ` should escape the codeblock for showing an example.

Can be invoked with ++codeblock or similar

Probably about equivalently hard to teach them how to use the bot command than how to use code blocks

Probably about equivalently hard to teach them how to use the bot command than how to use code blocks

It would basically be if someone posts code without a codeblock, someone can call the command so the bot can teach them how.
Now that I think about it, we might even be able to detect code outside a codeblock without having to run a command.

It would basically be if someone posts code without a codeblock, someone can call the command so the bot can teach them how.
Now that I think about it, we might even be able to detect code outside a codeblock without having to run a command.

Examples of what I mean:
(from r/webdev server)

Examples of what I mean:
(from r/webdev server)

Consider the ability to request specific instructions, like this:
++markdown italics

or
++md code blocks

or
++md codeblock

Consider the ability to request specific instructions, like this:
++markdown italics

or
++md code blocks

or
++md codeblock


[MM-44169]: Stay on Threads view when switching teams

Summary

When switching teams, check previousTeamLastViewedType.
If this value is set to threads, then lastChannelPath is set to threads, too.
Ticket Link

Fixes https://github.com/mattermost/mattermost-server/issues/20207
Related Pull Requests

https://github.com/mattermost/mattermost-webapp/pull/10255

Screenshots

Release Note

NONE

Hello @kyeongsoosoo,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

@esethna Playing with this a bit on the test server, I'm ending up in that situation I was worried about where you get sort of stuck in Threads view as soon as you've switched teams with it open once. After switching away from a team with Threads open once, it seems like I'm always sent back to Threads view when switching teams after that because either I swapped from a team with Threads view open (keeping me in that view) or I switched to a team which had it open. Maybe that'll happen less often in practice because I'd have more channels and be less likely to switch back and forth between teams repeatedly, but it definitely feels weird to me as-designed.

Maybe that'll happen less often in practice because I'd have more channels and be less likely to switch back and forth between teams repeatedly, but it definitely feels weird to me as-designed.

Ya thanks for the feedback. I feel the same on the test server but I'd like to use it in production to see if it's an issue in real world use. If so we can always revert this PR or adapt accordingly

This PR has been automatically labelled "stale" because it hasn't had recent activity.
A core team member will check in on the status of the PR to help with questions.
Thank you for your contribution!

@jgilliam17 for QA review please

/update-branch

/e2e-test

Thanks @kyeongsoosoo
Tested, looks good to merge - pending e2es - re-running here last report had significant number of specs skipped

Verified user stays on Threads when switching teams

Latest E2E report - no PR related failures.

/cherry-pick cloud

Thanks for this PR @kyeongsoosoo!


import: remove the proper path

Closes #70
When a file under an imported directory is removed, calculate the
correct path to remove.
Signed-off-by: Serge Hallyn<EMAIL_ADDRESS>

Maybe we should add a test which reproduces the conditions in which the bug was found.

Maybe we should add a test which reproduces the conditions in which the bug was found.

Oh, actually there was a test, but it was wrong.  Trying to fix it.  But man bats, is annoying to debug.

Maybe we should add a test which reproduces the conditions in which the bug was found.

Oh, actually there was a test, but it was wrong. Trying to fix it. But man bats, is annoying to debug.

sorry, yes, i did find it later that night.


How to convert dseq results to dataframe?

Hello :)
After dealing with a lot of errors, I've finally got the expected table out of deseq script -
`Log2 fold change & Wald test p-value: strain S288C vs RM11
baseMean  log2FoldChange     lfcSE      stat    pvalue  padj
0     0.000000             NaN       NaN       NaN       NaN   NaN
1     0.000000             NaN       NaN       NaN       NaN   NaN
2     0.000000             NaN       NaN       NaN       NaN   NaN
3     0.160284        0.879404  2.528475  0.347800  0.727990   NaN
4     2.424527        4.707459  2.135109  2.204786  0.027469   NaN
...        ...             ...       ...       ...       ...   ...
6692  0.000000             NaN       NaN       NaN       NaN   NaN
6693  1.950290       -0.904463  1.170501 -0.772715  0.439691   NaN
6694  0.641902        1.432367  1.793678  0.798564  0.424543   NaN
6695  2.444357        0.447478  1.025930  0.436168  0.662715   NaN
6696  1.110214        0.328981  1.382793  0.237910  0.811951   NaN
[6697 rows x 6 columns]`
I now trying to move forward and filter the table by log2foldchange>1 and pvalue<0.05, but it seems that the results dataframe i'm trying to get is empty. This is my code -
`import pandas as pd
from pydeseq2.default_inference import DefaultInference
from pydeseq2.dds import DeseqDataSet
from pydeseq2.ds import DeseqStats
Read sample info into DataFrame with 'sample' column as index
sample_info_df = pd.read_csv('sample_info.tsv', sep='\t', index_col='sample')
Read count data into DataFrame (assuming counts.tsv is in the same directory)
count_data_df = pd.read_csv('counts.tsv', sep='\t', skiprows=[0])
Drop irrelevant columns
count_data_df = count_data_df.drop(columns=['Geneid', 'Chr', 'Start', 'End', 'Strand', 'Length'])
Transpose the count data
transposed_df = count_data_df.transpose()
Create an instance of DefaultInference
inference = DefaultInference(n_cpus=8)
Create a DESeqDataSet object
dds = DeseqDataSet(
counts=transposed_df,
metadata=sample_info_df,
design_factors=['batch', 'strain'],
refit_cooks=True,
inference=inference
)
Run DESeq2 analysis
dds.deseq2()
results = DeseqStats(dds, inference=inference)
print(results.summary())
summary_df = pd.DataFrame(results.summary())
filtered_results = summary_df[summary_df['pvalue'] < 0.05]`
and this is the errors i'm getting (also with log2foldchange filtering) (ignore the padj I tried to filter by, my mistake)
AttributeError: 'NoneType' object has no attribute 'summary'
File "/home/nofar/new.py", line 40, in <module>     filtered_results = results.summary()[(results.summary()['log2FoldChange'] > 1) & (results.summary()['padj'] < 0.05)]                                           ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ TypeError: 'NoneType' object is not subscriptable
I would be happy to get some help,
Thanks in advanve, Nofar :-]

I didn't mean to upload this with these big headlines, but it's cool ><

After producing the deseq statistics (DeseqStats) one of the attributes of the returned object is the results pandas dataframe you are after
results = DeseqStats(dds, inference=inference)
print(results.results_df) # Will print the dataframe you are after
print(type(results.results_df)) # To validate that this is indeed a pd.DataFrame object

https://pydeseq2.readthedocs.io/en/latest/api/docstrings/pydeseq2.ds.DeseqStats.html#pydeseq2.ds.DeseqStats.results_df

I still get an error, and this time -
Traceback (most recent call last):   File "/home/nofar/new.py", line 37, in <module>     print(results.results_df) # Will print the dataframe you are after           ^^^^^^^^^^^^^^^^^^ AttributeError: 'DeseqStats' object has no attribute 'results_df'
I tried to change the results name, or put antother identification to it, such as: results_df = results.results, but I  still can not access to the Deseq dataframe..

Did you run the results.summary()?
results = DeseqStats(dds, inference=inference)
results.summary()
print(results.results_df) # Will print the dataframe you are after
print(type(results.results_df)) # To validate that this is indeed a pd.DataFrame object

assuming this issue is resolved


fix quarkus-config-doc-maven-plugin

Moves version management from client module to parent module

@jtama do you still need help with this or you fixed the issue you had with this PR? I can have a look if you need further help.

Hi @gsmet, I think I know what happend, I add different plugin version with incompatible class attributes, thus the exception.
Running mvn dependency:resolve-plugins now give expected result (only one plugin version), If the workflow fails tomorrow, I will ping you back !

It's fixes


Fixed multi-language support URL

In aiohttp0.14.1, when the URL in Chinese characters, will be reported 404 errors when accessing. Such modifications do then you can solve this problem

Right now, I am -1 for that change. I need failing test case that this change fixes

@asvetlov do you think it is possible to extract multilanguage test cases from pyramid?

@fafhrd91 sure.

Whe this bug will be fixed?


Volatile sources in the computation graph

Integrating with the platform inherently requires volatile functions (borrowing the term "volatile" from Excel formulas). The platform is filled with impure properties and functions that return different values when called over time. Sometimes they expose events for detecting changes. Sometimes they don't.
Here are some concrete examples:

Reading from localStorage
Observing location.hash
Subscribing to a media query

From what I've seen, the common pattern for integrating these APIs is to synchronize them into a signal replica:
const signal = new Signal.State(location.hash);

window.onhashchange = () => {
  signal.set(location.hash);
};

This works, but it means every integration has a global listener that survives for the lifetime of the application. Consider a library of bindings like useHooks. This is a non-starter. It only grows and adds cost with every binding.
So we optimize: only subscribe to the API when the value is actually used (meaning: under observation).
const signal = new Signal.State(location.hash, {
  [Signal.subtle.watched]() {
    window.onhashchange = () => {
      signal.set(location.hash);
    };
  },

  [Signal.subtle.unwatched]() {
    window.onhashchange = null;
  },
});

The Bug: This works, but only some of the time. Values can still be read when they are not being watched. Reading an unwatched signal will give the stale value.
// Is this value correct? Who knows. Only if an observer happened to capture it.
signal.get();

Imagine observing location.hash in a component, then a click event fires an async task and navigates away. The task finishes and uses signal.get(), but since the original component is no longer observing it, the value has gone stale. The effect completes with invalid data.
While this is a consequence of The Way it Works :tm:, it leaves a lot of space for bewildering footguns. To make this robust you need to know if the value is being observed and branch, either using the signal or reading the value from source. This applies to trees of Computed sources too. It isn't clear how a framework would solve this without devolving to "observe all platform bindings, all the time, forever".
I'm not the first one to notice this. It's a recurring theme in other issues:

https://github.com/tc39/proposal-signals/issues/227 (attempt to bind localStorage resulting in similar issues)
https://github.com/tc39/proposal-signals/issues/165 (sketch of a very similar idea from dead-claudia)
https://github.com/tc39/proposal-signals/issues/9 (tangential, but good example of Math.random as a volatile source)

Proposal
Ultimately the challenge comes from maintaining two sources of truth: one in the platform and one in the signal. We can't keep the signal state fresh without permanently listening to the platform, and this causes different behaviors when observed and not observed. So I suggest we don't try.
Instead, I propose (bear with me) a new Signal.Voltile source that reads the value directly:
const signal = new Signal.Volatile(() => location.hash);

Every signal.get() uses the getter to pull the value. It is never stale, even when unobserved.
Unfortunately much like Excel, this has the effect of busting the cache for every computed down the chain. It's rather extreme. We can avoid it by tapping into change handlers for features that support it:
const signal = new Signal.Volatile(() => location.hash, {
  subscribe(onChange) {
    window.onhashchange = onChange;

    return () => {
      window.onhashchange = null;
    };
  },
});

In this hypothetical example, volatile signals with subscribe handlers would become non-volatile when observed (same cache semantics as signals) and revert to volatile when not observed (maintaining correctness when read outside Sauron's watchful gaze).
I think the majority of platform bindings fall under this style, as does integrating with any external store.
Adding a new primitive is rather extreme, but for the life of me I can't figure out how to reconcile this with signals. I appeal to spreadsheets because it seems they haven't solved it either. Forgive my hubris.

I quite like this.

I have a working proof of concept in my fork: https://github.com/PsychoLlama/signal-polyfill/pull/1/files
The goal was to explore the idea and eke out any unexpected consequences. Here's what wrinkled my forehead:

Can volatile functions depend on other states/computeds?
Can volatile sources read from other volatile sources?
What happens if you call onChange immediately during the subscribe callback?
What happens if you call onChange during a Watcher callback?
What should happen if the subscribe handler throws?

I answered "yes" to questions 1 & 2 and left the rest unhandled.
One of the more surprising outcomes was how similar it was to Signal.Computed. Almost every design decision logically followed what Computed had done. The bits left unimplemented (error handling, circular functions) are already handled by Computed.
It left me wondering: should this be a mode on Computed instead?
new Signal.Computed(() => location.hash, {
  volatile: true,
  // ... provide some mechanism to upgrade to non-volatile with an `onChange` handler ...
})

On a similar line, dynamically upgrading a signal from volatile to non-volatile depending on whether it's observed is very nice ergonomically, but it can be implemented with the existing tools if you're willing to create a few extra nodes:
const volatileHash = new Signal.Computed(() => location.hash, {
  volatile: true,
})

const dynamicSource = new Signal.State(volatileHash, {
  [Signal.subtle.watched]() {
    queueMicrotask(() => {
      dynamicSource.set(new Signal.State(location.hash))
      // set up change handlers
    })
  },
  [Signal.subtle.unwatched]() {
    dynamicSource.set(volatileHash)
    // tear down change handlers
  },
})

const hash = new Signal.Computed(() => {
  const maybeVolatile = dynamicSource.get()
  return maybeVolatile.get()
})

Essentially creating a isObserved signal that, when you watch it, swaps out the volatile Computed for a non-volatile State that subscribes and keeps its cache updated.

In summary, I think I can drastically reduce the scope of this proposal by only adding a volatile mode to Computed. No subscribe-to-upgrade or new Signal.Volatile source.

I think we've had some requests for un-cached computeds from other people. I'm not sure if we've gathered all the use cases around that yet, but this seems like a pretty solid use case to add to the list. /cc @littledan

This is a great issue, thank you for filing this. I agree that watched/unwatched present a bit of a footgun at the moment. What if we made the semantics that, if you have a watched callback, but the computed signal is not being watched, then the signal is treated as "always dirty"/uncached?

On second thought, I'm not sure that strategy would work so well for the Signal -> Observable conversion, since you'd want that to really just throw when it's not watched.

Aha, noting that volatility is (forward-)contagious is very useful here!
... But unlike "is loading" or "has read data from a transaction" or other proposed forward-contagious properties, it does kind of want to affect the behavior of baseline computeds, not just propagate transparently through them.
The other open question it's adjacent to is: what happens when a signal, or one of its dependencies, gets re-dirtied while checking stale dependencies? Or more generally, what do you do during get when, after checking and cleaning each upstream dependency once, you fail to reach a state where they're all clean?
If you interpret the state of a Computed as being supposed to represent a bound on the states of its dependencies ("a Computed being t-clean for timestep t implies all its dependencies are also t-clean") then you are kind of forced to say that, if cleaning the dependencies during .get doesn't actually leave them fully clean, the Computed you called get on had better not be marked clean afterwards either. That creates the right notion of contagious volatility, and all you need is a widget (built-in or constructed) to produce the original never-clean node.
(I'd have to play around to see whether that original node is expressible without extra constructs; you can definitely make it dirty enough, but you also have to prevent watchers from being able to detect your re-dirtying strategy.)

I was initially very interested in this suggestion and I have played a bit with Signal.Volatile (even writing an alternative implementation here), but I especially don't like the following behavior:
const volatile = new Signal.Volatile(() => count++);
const dep1 = new Signal.Computed(() => volatile.get());
const dep2 = new Signal.Computed(() => volatile.get());
const result = new Signal.Computed(() => `${dep1.get()},${dep1.get()},${dep2.get()},${dep2.get()}`);
console.log(result.get()); // displays 0,1,2,3

When not live, there is no consistency of the value used for the volatile in the result.
I am suggesting another option: change the spec to automatically make live all computed when they are read (for the duration of the call to get): https://github.com/proposal-signals/signal-polyfill/pull/32


Nested submenus in dropdown is not being shown

Describe the bug (actual behavior)

Dropdown menu component's is not displaying nested submenus. It shows the first layer, but not subsequent layers.
Expected behavior

Should show nested submenus regardless of depth
Reproduction
Link to a minimal repro:
Can be seen in Storybook demo: https://itwin.github.io/iTwinUI/react/?path=/story/core-dropdownmenu--submenu
Observe that Item 4's submenu items 7 and 8 are not showing.
Steps to reproduce

 Create a dropdown menu with a menu item with a submenu

 In the submenu, create another menu item with a submenu

 Items are not shown in the nested submenu

Additional information

Seems to be a fairly recent regression. Eric mentioned storybook was working last week.

Should be fixed in 2.12.17
https://itwin.github.io/iTwinUI/legacy/v2/react/?path=/story/core-dropdownmenu--submenu


Calibrate OM10 magnitudes to PhoSim Catalog magnitudes

Need to figure out what bands the magnitudes that come out of OM10 are in and convert to LSST magnitudes for catalogs.

Added to task list under #37

Hi @drphilmarshall,
Do you have any sort of legend for the OM10 catalog variables? I'm just wondering what values I should give for magnitudes of the images. I originally thought that the 'MAG' column was a magnification in magnitudes but when @SimonKrughoff was trying to make phosim images he was getting problems and I went to the OM10 catalog and realized some of those 'MAG' values are in the order +/- 100 so that can't be the case.

I found this code from the OM10 repo here, so I will go with what's there for RA, DEC, MAG adjustments for images for now until I hear otherwise.

That's right: 'MAG' is the magnification of each quasar image, so you need
to subtract -2.5log10 of MAG from the source magnitude. The magnification
is the same in each filter, since lensing (and geometric optics in general)
is achromatic.
On Wed, Feb 10, 2016 at 11:39 AM, Bryce Kalmbach<EMAIL_ADDRESS>wrote:

I found this code from the OM10 repo here
https://github.com/drphilmarshall/OM10/blob/master/om10/db.py#L215, so
I will go with what's there for RA, DEC, MAG adjustments for images for now
until I hear otherwise.
—
Reply to this email directly or view it on GitHub
https://github.com/DarkEnergyScienceCollaboration/Twinkles/issues/46#issuecomment-182544209
.

With #119 we have the correct magnification definition in the sprinkler now. Also, the 'i' band magnitudes for lens galaxies has been translated into the "imsimband" for the correct magNorm values.

Boom!
On Thu, Feb 11, 2016 at 3:56 PM, Bryce Kalmbach<EMAIL_ADDRESS>wrote:

Closed #46
https://github.com/DarkEnergyScienceCollaboration/Twinkles/issues/46.
—
Reply to this email directly or view it on GitHub
https://github.com/DarkEnergyScienceCollaboration/Twinkles/issues/46#event-547932475
.


Ros2 system status tf namespace

Description
Modifications
Added AddNamespaceToFrameID util
Added tests for AddNamespaceToFrameID
Applied to SystemStatus message
Applied AddNamespaceToFrameID  to channel frames from panther_lights
Changed names of links of lights.
Applied pre-commit

Summary by CodeRabbit

New Features

Introduced a new utility function for formatting frame IDs with namespaces, enhancing the clarity of ROS messages.

Bug Fixes

Corrected a minor comment typo in the SpatialDataCallback method for accuracy.

Tests

Added extensive unit tests for the new AddNamespaceToFrameID function to ensure its reliability under various namespace conditions.

@coderabbitai review


GraphQL Errors on initial install

When I install the library, my graphql requests return "There is no current event loop in thread 'Thread-1'.. Any idea how to solve?

It seems you are trying to do await x in a non async context (for example, from the main python program).
You will need to run it inside another async function