Dealing with from tensorflow.contrib import ... in  tf_upgrade_v2

Please make sure that this is a feature request. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:feature_template
System information

TensorFlow version (you are using):2.3.0
Are you willing to contribute it (Yes/No):No

Describe the feature and the current behavior/state.
I ran into cases not covered by the tf_upgrade_v2 tool yet, namely certain TF1 models in the zoo (https://github.com/tensorflow/models/tree/master/research)  that import from tensorflow.contrib - which was deprecated in TF2
I created a small example to illustrate the current behaviour of  the tf_upgrade_v2 tool on these:
%%bash

cat > /tmp/example.py << EOL
try:
    from tensorflow.contrib import quantize as contrib_quantize
    from tensorflow.contrib import framework as contrib_framework
    from tensorflow.contrib import slim as contrib_slim
    from tensorflow.contrib.slim.nets import resnet_utils
    from tensorflow.contrib import layers as contrib_layers
    from tensorflow.contrib import tfprof as contrib_tfprof
    from tensorflow.contrib import training as contrib_training
    from tensorflow.contrib import metrics as contrib_metrics
except Exception as e:
    print(type(e).__name__, ":", e)

from tensorflow_addons import metrics as addons_metrics

def demo_deprecated():
    print(dir(contrib_metrics))

def demo_ok():
    print(dir(addons_metrics))

if __name__ == '__main__':
    demo_ok()
    print("===========================")
    demo_deprecated()
EOL

Then, according to https://www.tensorflow.org/guide/upgrade, we do:
!tf_upgrade_v2 \
  --infile /tmp/example.py \
  --outfile /tmp/example_v2.py

The report file doesn't contain any warning about the deprecated modules:
!cat report.txt
TensorFlow 2.0 Upgrade Script
-----------------------------
Converted 1 files
Detected 0 issues that require attention
--------------------------------------------------------------------------------
================================================================================
Detailed log follows:

================================================================================
--------------------------------------------------------------------------------
Processing file '/tmp/example.py'
 outputting to '/tmp/example_v2.py'
--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

The two files are identical:
!diff -u /tmp/example.py /tmp/example_v2.py
However, unsurprisingly, the ModuleNotFoundError is thrown when we execute:
!python /tmp/example_v2.py
2020-10-16 19:52:37.022043: I tensorflow/stream_executor/platform/default/dso_loader.cc:48] Successfully opened dynamic library libcudart.so.10.1
ModuleNotFoundError : No module named 'tensorflow.contrib'
['CohenKappa', 'F1Score', 'FBetaScore', 'HammingLoss', 'MatthewsCorrelationCoefficient',  ... , 'utils']
===========================
Traceback (most recent call last):
  File "/tmp/example_v2.py", line 25, in <module>
    demo_deprecated()
  File "/tmp/example_v2.py", line 16, in demo_deprecated
    print(dir(contrib_metrics))
NameError: name 'contrib_metrics' is not defined

It would be nice to see the tf_upgrade_v2 tool (more precisely: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/compatibility/tf_upgrade_v2_main.py) updated to treat these cases from tensorflow.contrib import ... .
Moreover, it would be great to have the tf_upgrade_v2 tool extended so that it incorporates in the migration process (or at least as guidance in the report.txt) the successors of the modules in TF1 tensorflow.contrib , such as the tensorflow_addons (https://github.com/tensorflow/addons), tf_slim (https://github.com/tensorflow/models/tree/master/research/slim), etc.
Will this change the current api? How?
No API changes are necessary.
Who will benefit with this feature?
Everyone who tries to migrate TF1 models to TF2, when the files contain imports from tensorflow.contrib
Any Other info.
Many thanks in advance,
Camelia

Was able to reproduce the issue with TF v2.3 and TF-nightly. Please find the gist of it here. Thanks!

Thank you for filing the issue and sorry for delay!
We should print an error/warning on from tensorflow.contrib ... import is used.
Note that the upgrade documentation (https://www.tensorflow.org/guide/upgrade) has a note saying that tf.contrib references need to be updated manually and proposes to check https://github.com/tensorflow/addons.

I think this is resolved.  As mentioned above, we need to update contrib manually.

Because of TensorFlow 2.x module deprecations (for example, tf.flags and tf.contrib), some changes can not be worked around by switching to compat.v1. Upgrading this code may require using an additional library (for example, absl.flags) or switching to a package in tensorflow/addons.

Please check the updated guide here https://www.tensorflow.org/guide/upgrade
I am closing this issue as this was resolved. Thanks!

I think this is resolved. As mentioned above, we need to update contrib manually.

Because of TensorFlow 2.x module deprecations (for example, tf.flags and tf.contrib), some changes can not be worked around by switching to compat.v1. Upgrading this code may require using an additional library (for example, absl.flags) or switching to a package in tensorflow/addons.

Please check the updated guide here https://www.tensorflow.org/guide/upgrade
I am closing this issue as this was resolved. Thanks!

i don't think this sloved!
can you tell me how to solve tf.contrib,the update guide can't explain how to solve it

i don't think this sloved!
can you tell me how to solve tf.contrib,the update guide can't explain how to solve it


docker service manager does NOT map host volume

Cookbook version (4.1.0), Chef-client version (12.15.19)
etcd_service_manager_docker does not provide an option to map the data_dir to a local volume on the host. Doing so will allow users to restart/update their containers without blasting all of their etcd data, and this is very important in order to maintain cluster stability in production.

This is really something we should do. I'll take a look at


Spurious ';' on line 191 of conj.y

On line 191 of conj.y there is an extra ';' at the end of the line.  This causes older version of bison to barf
|                               IDENTIFIER                  { $$ = ctx.use($1);   };

Please notice and fox it please @bisqwit it messes up the github syntax highlighting.


:sparkles: Added Channel.bulk_delete_messages() and Channel.edit_permissions()

Changes

adds: Channel.bulk_delete_messages() and Channel.edit_permissions()
improvements: Changed some indentation of function parameters and made Channel.delete() use remove_none().

Check off the following

[X] I have tested my changes with the current requirements
[X] My Code follows the pep8 code style.

Please use gitmoji for your future commits. Other than that it looks good.


added one resource for javascript and ReactJS each

Hacktoberfest notes:

due to volume of submissions, we may not be able to review PRs that do not pass tests and do not have informative titles.
please read our contributing guidelines
be sure to check the output of Travis-CI for linter errors
if this is your first open source contribution, make sure it's not your last!

What does this PR do?
Add Resource(s) | Remove Resource(s) | Add info | Improve Repo
For resources
Description
Why is this valuable (or not)?
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[x] Not a duplicate
[x] Included author(s) if appropriate
[x] Lists are in alphabetical order
[x] Needed indications added (PDF, access notes, under construction)

please resolve conflicts.

First resource(JS) has been added already, second resource isn't a playlist

should start from scratch to add the second resource


[os-postfix] use TLS certificate both for smtpd and smpt connections in postfix plugin

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/plugins/blob/master/CONTRIBUTING.md
[x] I have searched the existing issues, open and closed, and I'm convinced that mine is new.
[x] When the request is meant for an existing plugin, I've added its name to the title.

Is your feature request related to a problem? Please describe.
We want to set up the os-postfix plugin with o365 as smart host. Microsoft offers multipe ways to authenticate the OPNsense as a relay server.

via fixed IP address
via the TLS certificate used from the os-postfix plugin when connecting to the smart host (in this case o365). --> outbound SMTP TLS connection from postfix to o365

As not all of our remote offices have fixed IPs we want to use option 2), the domain name in the TLS certificate to authenticate against the o365 connector.
Describe the solution you'd like
To make this work, the following settings in postfix conf need to be set for outgoing SMTP TLS connections to the o365 smarthost server:
postconf -e "smtp_tls_cert_file = cert_file"
postconf -e "smtp_tls_key_file = cert_key"
So I would like to see an option to also set the smtp certs, not only the smtpd certs. Maybe with a separate checkbox to enable and disable.
Currently the certificate selected in the GUI only applies to inbound SMTP TLS connections, the OPNsense plugin authenticates:
postconf -e "smtpd_tls_cert_file = cert_file"
postconf -e "smtpd_tls_key_file = cert_key"
Describe alternatives you've considered
using a docker container with postfix and adding the settings accordingly works, but I would like to use postfix plugin on the firewall instead
Additional context
none, on request I can provide a working docker container with the correct settings, but it is as much as adding the  2 lines regarding smtp certificate to the postfix config file pointing to the same cert files and key as for the smtpd setting.

It could be an alternative to add the following setting to /usr/local/etc/postfix/main.cf
smtp_tls_cert_file = $smtpd_tls_cert_file
smtp_tls_key_file = $smtpd_tls_cert_file

To my knowledge, this should not break any existing setups, because client certificates are only sent if requested by the server.
An advantage would be that not having to set two certificates is less confusing to the less adept user.
If we would want to be more careful, the above could be set by a simple (hidden?) checkbox 'Send TLS client certificate':
{% if helpers.exists('OPNsense.postfix.general.send_tls_client_certificate') and OPNsense.postfix.general.send_tls_client_certificate == '1' %}
smtp_tls_cert_file = $smtpd_tls_cert_file
smtp_tls_key_file = $smtpd_tls_cert_file
{%endif %}

Thank you for your input. I think both options would be ok. I personally prefer the second solution with the hidden checkbox.

@fred-bloggs
Sorry for ressurecting this old thread, but the issue at hand is still very valid and no one seems to have a real solution to it.
I added the follow to main.cf and restartet postfix daemon:
smtp_tls_cert_file = $smtpd_tls_cert_file
smtp_tls_key_file = $smtpd_tls_cert_file
even tried adding it like this:
smtp_tls_cert_file = /usr/local/etc/postfix/cert_opn.pem
smtp_tls_key_file = /usr/local/etc/postfix/cert_opn.pem
also with only smtp_tls_cert_file, since the cert_opn.pem contains cert and key:
smtp_tls_cert_file = /usr/local/etc/postfix/cert_opn.pem
Both all no avail and throws the following error in postfix log when trying to send to an MTA which does client cert verification:
warning: TLS library problem: error:14094416:SSL routines:ssl3_read_bytes:sslv3 alert certificate unknown:ssl/record/rec_layer_s3.c:1621:SSL alert number 46:
Any idea why that doesn'ts work?


Add favicon

This has been fixed by a recent PR.

Hmm, I would recommend we don't use an SVG since it is not well supported

We could just use a PNG - that's well-supported. And honestly, according to the usage tables, we really don't even need to bother with a favicon.ico.
Chrome recommends a 192x192 PNG.
I'll make a PR with the changes.

Cool, sounds good!


[Bug]: Anti-affinity rule interfering with tutorial

Contact Details
<EMAIL_ADDRESS>What happened?
I tried to follow the tutorial for running a Neo4J cluster with 3 core instances using the helm charts.
Each time I tried, the first pod was able to start (however stayed in not-ready mode due to only 1 out of 3 required core instances running). The second and third core instances failed to start (stayed in pending state) with error 1 node(s) didn't match pod anti-affinity rules.
Finally I managed to solve this issue by setting podSpec.podAntiAffinity to false in the value.yaml for starting the helm chart.
As far as I understand the pod anti-affinity rule only allowed one StatefulSet instance with the particular neo4j.name is was using to be deployed, and any other StatefulSet with the same neo4j.name would fail.
However, according to the tutorial, I was meant to run the helm install three times with the same neo4j.name otherwise they would make three different clusters instead of one with 3 core instances.
This furthermore raises a question for me why you would deploy three different statefulsets with each 1 pod, as indeed according to the desired output for kubectl get pods the -0 after the pod name indicates the first pod in a certain deployment/statefulset.
Is this indeed intended to have three different statefulsets and then anti-affinity interfering with this intended deployment strategy?
Thanks in advance!
Chart Name
Cluster
Chart Version
4.4.1
Environment
Local Machine
Relevant log output
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi @Leander-van-Boven , the pod anti affinity rule is set to true to default  to prevent database pods with the same neo4j.name running on a single Kubernetes node.
For a cluster you need to have a kubernetes cluster with 3 node or you can set the podAntiAffinity rule to false and deploy all the pods on a single node but that leads to issues if that node goes down or its memory and space limits reaches , hence its better to deploy each of your neo4j instance on a separate node

Hi @Leander-van-Boven , the pod anti affinity rule is set to true to default  to prevent database pods with the same neo4j.name running on a single Kubernetes node.
For a cluster you need to have a kubernetes cluster with 3 node or you can set the podAntiAffinity rule to false and deploy all the pods on a single node but that leads to issues if that node goes down or its memory and space limits reaches , hence its better to deploy each of your neo4j instance on a separate node

That explains a lot, also why I get this error when running it in my local (one node) minikube cluster. Thanks so much for the fast reply!

No problem @Leander-van-Boven . Glad I was able to help.


Prop scale not working

I use prop scale and pass in values 1.1, 1,2... but the pdf page still can't zoom

Hi @tun009
Please check https://github.com/hrynko/vue-pdf-embed/issues/239#issuecomment-2379349496


QuCoeffs: A more controlled approach to QuArray coefficient containers

This PR presents a new wrapper type, QuCoeffs, which gives us better control over the behavior of QuArrays' coefficient containers.
Specifically, this is an attempt at providing a solution to #9.
Major changes:

The QuCoeffs type. This type provides a wrapper for lazy conjugation/transposition on arbitrary coefficient containers; I tried to incorporate some of the ideas from JuliaLang/julia#6837. I specifically focused on getting the implementation to make sense for vectors and matrices (nothing N>2). Having QuCoeffs also helps separate some of the logical concerns that arise for QuArrays. Now, we can think of our type structure the following way:

Behavior of coefficients is defined with QuCoeffs
Behavior of bases is defined with AbstractBasis
Their combined/interacting behavior is defined with QuArray

QuArray coefficient containers are type-restricted to QuCoeffs (which themselves can hold whatever)

QuArray is no longer a subtype of AbstractArray. This allows for a much, much cleaner implementation of both the QuArray and QuCoeffs types. I think I'm seeing in action the argument that @Jutho's been making for a while now - at this point, QuArray behavior really does seem to deviate from the behavior defined on AbstractArrays. We'll have to implement our own printing methods, though :(

Minor cleanup/reorganization related to the introduction of QuCoeffs. Convience constructors (statevec, zero, eye) have moved to their own file.

I'm really interested in getting @Jutho's eyes on this - my secret hope is that we could use TensorToolbox.jl to extend the functionality of (or maybe replace) QuCoeffs in the future.

Thanks for doing this! It certainly looks promising. I will also try to have a closer look (time is a bit constrained these days).

This certainly ooks interesting. Tensors from TensorToolbox.jl are still more general in that every single tensor index can be associated to a vector space or its dual (contravariant and covariant), or even to its conjugated or conjugated dual in the case of non-Hilbert spaces. This is not necessary to represent kets, bras and operators, but is necessary for e.g. representing states as tensor networks. Unfortunately I am having much less time than I thought and hoped to spend on this, so I have not really worked on this for a while now and it doesn't seem I'll have any time throughout January either. Maybe I should just try to get more people involved, but this also requires writing some basic documentation.

@Jutho I have friends working closely in tensor networks. I am trying to get more people on board on our future directions. I would appreciate if you can provide a minimum documentation and some examples on your package before the SQuInT meeting (Feb 19-21). Some of our volunteers (most are not Julia experts) will have meetings there to think about if anyone would like to do something over the coming months. Hopefully it helps.

I did have another thought:
Despite the obvious performance tradeoffs, one of the main reasons lazy transposition is so heavily discussed in Base right now is that it removes the conflation between row vectors and matrices, by allowing 1-D array transposition to return a 1-D array. We actually already have a way of disambiguating row vectors and matrices for QuArrays, though - the basis information (we set N via the basis field).
With this in mind, we could actually have eager duality for QuCoeffs, keeping track of conjugation/transposition in the type parameters (like the original incarnation of this PR). This would obviate the need for a special dual function, and more importantly, allow us to easily extend functions from Base without getting caught up in the indexing issues that come with lazy transposition.
Once v0.4 releases, we could move to whatever lazy behaviors get decided on by that time.
The counter-argument to the above is that we really desire the performance tradeoffs that come with lazy transposition, which I would understand, but would quite a bit of work that might be spent on the transposition issues in Base.
Thoughts? I'm going to draft up a competing PR which implements what I'm talking about above, and we can decide between the two approaches.

@jrevels I think we should let performance and intuition talk. Better to have something to compare in comprehensive tests before making the final decision, which should become an important criterion for judging. Maybe you can branch out those different ideas on the repo. All sounds interesting!
BTW, regarding naming those types, I think it would be good to stick to the nomenclature that has been widely adopted in quantum mechanics textbooks. Certainly, we possibly will have to invent some new inner types for translating data inside Julia whenever it is necessary. I start wondering: are those names (QuCoeff and QuArray, etc) necessary and intuitive to introduce to our end users? Our users may not care about how arrays, vectors or matrices are employed and manipulated in side of the package. state (bra and ket), operator, superoperator, tensor_product_state and such should be enough for intuitive naming. It will also be easy and quick for future users to fall in love with the Julia library for quantum siblings. For a general policy, maybe we really want to make the typing system as simple as possible, and what we need to put more work on is to solve the compatibility, data manipulating, visibility and performance problems using dispatch and other wonderful features built in Julia rather than to keep inventing complicated types into the library. But we possibly can work on to make some alias and promotion rules in the end.

@i2000s That's why the QuCoeffs is not exported. It is not intended to be manipulated by an end user.

For a general policy, maybe we really want to make the typing system as simple as possible, and what we need to put more work on is to solve the compatibility, data manipulating, visibility and performance problems using dispatch and other wonderful features built in Julia rather than to keep inventing complicated types into the library.

If you have concrete suggestions for simplifying our type hierarchy, I'm all ears.

@jrevels Hah, you did not export those things. Obviously, I have lagged off for a while. Sorry for my ignorance.


Bug in Marshal.dump/Marshal.load with integers

$ ruby -e 'puts Marshal.load(Marshal.dump((1 << 32) - 1))'; bin/natalie -e 'puts Marshal.load(Marshal.dump((1 << 32) - 1))'
4294967295
4294967295

$ ruby -e 'puts Marshal.load(Marshal.dump(1 << 32))'; bin/natalie -e 'puts Marshal.load(Marshal.dump(1 << 32))'
4294967296
0

Our code works fine with 32 bit signed ints, but it should switch to a different data type as soon as we need a 5th byte. At this point MRI switches over to the l identifier instead of i (long instead of int?). We keep using i, which causes the parser to err.

https://iliabylich.github.io/2016/01/25/ruby-marshalling-from-a-to-z.html#integer
Some information on the Marshal format. Too bad none of the write ups I could find mentioned larger integers.

https://rubyreferences.github.io/rubyref/builtin/marshal.html#bignum


fix: Disallow copying of individual tabs in tab widget

Description
This PR fixes a bug where in, individual tabs of tab widget were allowed to copied or cut.
An additional check for canvas widgets were added for copy and cut of widgets. So, in future any canvas cannot be irectly copied not just tabs of tab widget.
PR fixes following issue(s)
Fixes #7886
Media
https://github.com/appsmithorg/appsmith/assets/71900764/97caa8d7-0a81-4de8-a8b7-19e1cbd63459
Type of change

Bug fix (non-breaking change which fixes an issue)

Testing
How Has This Been Tested?

[ ] Manual
[ ] Cypress

Test Plan
Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

/ok-to-test

/ok-to-test


ci: Add action to report bundle size differences

Summary

Runs a Github Action to calculate the bundled and unbundled size of mparticle.js, and then generates a report of the size changes.
Requires:

#314
#318

Testing Plan

Test using local Github action

Master Issue
Closes https://go.mparticle.com/work/SQDSDKS-3944

@rmi22186 updated to remove references to unbundled and made a slight change to the generated report

:tada: This PR is included in version 2.16.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Build IPT within Docker

Fix #1706.
Documentation should be updated too.
pom.xml could be improved, so we could download dependencies first, and then build IPT, which would allow caching and faster build time/less space used.

Is there anything I can do to improve this PR?


(maint) pdk 1.6 update

Add sync file from puppetlabs-facter_task, run pdk update with PDK 1.6.

Not really feasible right now.


Enhancement: library-only // Micropython

Hi,
I thought the inky display was interesting, but unfortunately, I have a pico that also needs special drivers for it, so I can't just upload this firmware. Is there any possibility in the future that instead of custom firmware, they could just be libraries? Or could parts that might be required to be in firmware get a PR into the main micropython?

Hi. It is very unlikely that we will offer a micropython driver for the inky display, due to how integrated all the displays are under our PicoGraphics library. Is there any particular reason you cannot use our version of micropython?
You could always find (or write) a micropython for the inky display. It is the UC8151. I know there are drivers available for CircuitPython for example, as I have used them. so perhaps that code can be ported?

Sorry if I've misunderstood something in advance.
I often would want to use the breakouts in conjunction with other projects; I use Belay which is amazing for controlling stuff directly from your PC. Belay has a package manager, where you can specify individual Micropython packages in pyproject.toml (bringing in the same unifying principles that a lot of Python packaging tools, e.g. Poetry, does). However, I can't seem to find the standalone Python libraries/files, just the C, Cmake, etc. files. Are they somewhere to be found, or is there a reason they are not?
Say I want to use the BH17455, and want to point to the .py file - is that possible?

Hi. It is very unlikely that we will offer a micropython driver for the inky display, due to how integrated all the displays are under our PicoGraphics library. Is there any particular reason you cannot use our version of micropython?
You could always find (or write) a micropython for the inky display. It is the UC8151. I know there are drivers available for CircuitPython for example, as I have used them. so perhaps that code can be ported?

Thats too bad. Luckily I was able to find another product that doesn't need a driver, and am using that.

@ZodiusInfuser Ah, that's unfortunate. Would it be possible to compile Python from the C code somehow? It would immensely helpful, as all your work could be used with package managers, such as Belay or mip, but without the Python packages, that's not possible. I'm not particularly interested in the BH1745 per se, but more in the general process of making all the amazing Micropython code available to the widest possible audience - it's a pity that the libraries can't be used outside a Pimoroni installation. I think thinking about how to integrate with package managers more seriously together with the great people at Micropython and elsewhere could unlock some great potential (see e.g. this discussion).


Open on lan

Hi,
I use raspbian lite with ssh only.
How to access to crontab-ui in lan with other PC?
My Rasebian IP is <IP_ADDRESS>
I test <IP_ADDRESS>:8000, but dont works !

You need to set it up with nginx. Refer this


esp, approached (logical-conflict)

This pull request was generated by the 'mq' tool

/trunk merge


sc-14491 Part 2: Updates GDS endpoints

Scope of changes
Updates the GDS endpoints as part of the email verification epic.
Type of change

[ ] bug fix
[x] new feature
[ ] documentation
[ ] other (describe)

Acceptance criteria
Describe how reviewers can test this change to be sure that it works correctly. Add a checklist if possible
Author checklist

[x] I have manually tested the change and/or added automation in the form of unit tests or integration tests
[ ]  I have updated the dependencies list
[x]  I have recompiled and included new protocol buffers to reflect changes I made
[ ]  I have added new test fixtures as needed to support added tests
[ ]   Check this box if a reviewer can merge this pull request after approval (leave it unchecked if you want to do it yourself)
[x]  I have moved the associated Shortcut story to "Ready for Review"

Reviewer(s) checklist

[ ] Any new user-facing content that has been added for this PR has been QA'ed to ensure correct grammar, spelling, and understandability.

/retest


AssertionError: not application/protobuf response

Hi, I've been using this api for a while and all was working great having all my apks updated and suddenly today it stopped working. When I try to use the command gp-download, gp-download-meta or some others it fails saying "AssertionError [ERR_ASSERTION]: not application/protobuf response". However, I can still use gp-bulk-details, gp-search or gp-get-token.
By removing the .toString() of the err.toString() from the download-meta file, I can get a little more explanatory error message:
_$ gp-download-meta com.twitter.android { AssertionError [ERR_ASSERTION]: not application/protobuf response     at /usr/local/lib/node_modules/google-play-cli/node_modules/gpapi/lib/api.js:245:9     at tryCatcher (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/util.js:16:23)     at Promise._settlePromiseFromHandler (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise.js:509:35)     at Promise._settlePromise (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise.js:569:18)     at Promise._settlePromise0 (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise.js:614:10)     at Promise._settlePromises (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise.js:693:18)     at Promise._fulfill (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise.js:638:18)    at PromiseArray._resolve (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise_array.js:126:19)     at PromiseArray._promiseFulfilled (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise_array.js:144:14)     at PromiseArray._iterate (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise_array.js:114:31)     at PromiseArray.init [as _init] (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise_array.js:78:10)     at Promise._settlePromise (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise.js:566:21)     at Promise._settlePromise0 (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise.js:614:10)     at Promise._settlePromises (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise.js:693:18)     at Promise._fulfill (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/promise.js:638:18)    at Request._callback (/usr/local/lib/node_modules/google-play-cli/node_modules/bluebird/js/release/nodeback.js:45:21)   generatedMessage: false,   name: 'AssertionError [ERR_ASSERTION]',   code: 'ERR_ASSERTION',   actual: false,   expected: true,   operator: '==' }_
This is reproducible by any apk i've tried. Hope you can help me or at least tell me what have happened. Is it possible that Google has changed its API or something like that??
Thank you very much for your work.

I've been doing some research about this error. Activating the debug, it seemed to me that the problem could be related to Google changing the header field 'content-type' from 'application/protobuf' to 'application/binary' given that the statusCode was 200 or something similar. So I commented the assert:
'assert(res.headers['content-type'] === 'application/protobuf', 'not application/protobuf response');' in the api.js file from the gpapi lib wich was throwing the error.
The result of this change is that now gp-download-meta and gp-download-info runs perfect again, but when I try to make an actual download with gp-download, I get the following error:
RequestError: Error retrieving information from server. [DF-DFERH-01]

thanks for the report...
commenting out the assert did seem to help me, are you sure that the app you're trying to download is compatible with the profile you're using?
try downloading a few other apps, do those work at all?
I might make a release with the assert removed...

Thank you for your fast answer. Finally I've realized that I was writting 'gp-download com.twitter.android twitter.apk' without the ">" symbol, so that's what I was getting a RequestError. Commenting out the assert seems to resolve the whole problem. I hope it is for good.
Again, thanks for your work and fast answer :)

Google changed the header field 'content-type' from 'application/protobuf' to 'application/binary'
Will this be fixed ? @dweinstein

The assert was removed in the current release


Provide instructions on reconfiguring OMS agent on Linux

Documentation provides PowerShell for updating config on Windows but no information for Linux.

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

ID: 5e1bc14e-2be9-0eba-b68a-e3e266e7949c
Version Independent ID: c931a6ce-5d85-b6b7-420d-99e2c9ed09d4
Content: Managing the Azure Log Analytics Agent
Content Source: articles/log-analytics/log-analytics-agent-manage.md
Service: log-analytics
GitHub Login: @MGoedtel
Microsoft Alias: magoedte

@stewartadam - Thanks for opening this issue and calling out this gap in the documentation.  I am going to bug this and work to add this information as soon as possible.  In the meantime, you can reconfigure the agent using the following command-line - /opt/microsoft/omsagent/bin/omsadmin.sh -w  -s  -v (-v for verbose logging).  #in-process


⚖ Register Validator: noderra

Network Choice
nemeton-1
Who are you?
i am noderra. I love running a node.
gentx
{"body":{"messages":[{"@type":"/cosmos.staking.v1beta1.MsgCreateValidator","description":{"moniker":"noderra","identity":"","website":"","security_contact":"samuageh@gmail.com","details":""},"commission":{"rate":"0.050000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"okp413rcd3ml3rucs42xxquytu9kcsl2gzdmu6kvpqm","validator_address":"okp4valoper13rcd3ml3rucs42xxquytu9kcsl2gzdmu03ug76","pubkey":{"@type":"/cosmos.crypto.ed25519.PubKey","key":"XN6vKEjiBRq+RPdAyYGksQwNxON3lZxrFmOiGgP8CkQ="},"value":{"denom":"uknow","amount":"10000000000"}}],"memo":"f4466f8dada1e9f3515f29596a7e57306f4b1e22@<IP_ADDRESS>:26656","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[{"public_key":{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"ApHM9Qjq1/OKG3A6ayTXE4oh70tYHkNrhOxjCcZYBAWh"},"mode_info":{"single":{"mode":"SIGN_MODE_DIRECT"}},"sequence":"0"}],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""},"tip":null},"signatures":["G/54Ra10Hm/bvN4PiaTlAms0UNi+IhD1Y78orxz+nzo6EFkmAfU+xJTKt2vWgMyIgMvKtNSnxJNMw4KpDLVseg=="]}

😉 Here is the corresponding PR: https://github.com/okp4/networks/pull/497


Ether cost information

Which buttons cost Ether to click? How much Ether? What does that cost in USD / BTC equivalent? Are these costs fixed or variable over time? Does it depend which button I click? Which market I click said button on? Might I want to spend more or less than the default amount, in order to get my action processed sooner / spend less money on fees?
All of these questions should be answered by the UI or documentation somewhere accessible; if the answer is "it's vanishingly small", then the answer could probably be a bit less convenient, but at least having a good estimate for how small is small would be good.

duplicate of #147


add reverse

this enables getting the last message first and iterating backwards.
I disabled the tests for offset v1 and added a deprecation warning. We only used this format at the beginning of our ssb work. It Still works but I didn't add reverse to it so the tests fail.
cc @keks

@keks would love a shallow review from you or maybe just some suggestions for additional test cases?

updated all of that. Also added tests for rev+gt, which are failing right now.
I think the main blocker is that options need to be cleaned up. I'd argue that we can't do validation for the whole query inside them (since that depends on order and the breaking ones might not have been applied yet).
Also the way that GT(e) just seeks forward breaks the way I implemented reverse but that's a nother cup of 🍵 from the above but the ball is in the same corner of the field.

I think the main blocker is that options need to be cleaned up.

Agreed.

I'd argue that we can't do validation for the whole query inside them (since that depends on order and the breaking ones might not have been applied yet).

I don't think so. We can check that qry.reverse is false when qry.Live(true) gets called, and vice versa. That would mean that we have to put the check in both Live and Reverse, but IMHO that is the clean way to do it, and that's why the Options return errors in the first place.
Currently "offset2".log.Query doesn't do anything except applying the options and I really like that the options are self-contained.

that's why the Options return errors in the first place

there are things that are self-contained to the option, like only accepting a limit of a certain size. Doing it that way means having to check it in two places and having to keep that in sync as the code changes.

Currently "offset2".log.Query doesn't do anything except applying the options and I really like that the options are self-contained.

If you look at the GTE/LTE + Reverse case, it gets very messy to do the setup in the options since you need to respect this interplay with other options which might be called before or after another one, so the init/setup code gets much simpler if you try to do it once everything was applied,

I know that it would be a little bit simpler if we do it afterwards, it just has a much saner structure if we do it in the option itself. An option is a thing that changes the query state and then returns an error. If a change is illegal, it should return an error immediately, instead of saying "all good" and having to verify later whether really everything is ok.
We could try doing the check in a function and using that in both places?

It makes the the calls to Next return a type that let's you access both the value and the sequence number of that value in the log.
Thanks for the review!
Am 10. Juli 2019 11:34:48 MESZ schrieb PragmaticCypher<EMAIL_ADDRESS>
PragmaticCypher commented on this pull request.

@@ -97,6 +98,19 @@ func (qry *memlogQuery) Live(live bool) error {
return nil
}

+func (qry *memlogQuery) SeqWrap(wrap bool) error {
Just curious, what does SeqWrap do?

--
Sent from mobile.


wip! check if rolloutState is completed

Summary
On Skate, we've had a few deploys silently fail and FP successful complete. This was because deploy-ecs/deploy.sh was unaware that the deployments may be rolled back by the AWS circuit breaker. By checking if the deploy completed, we now know whether the deploy was successful or not, regardless of the circuit breaker's presence.

Future work

I think that deploy.sh should keep track of the deploy id's and get the deploys from the id value, instead of the status.
new_deployment="$(echo "${service_status}" | jq -r '.services[0].deployments[] | select(.status == "PRIMARY")')"

Would become
new_deployment="$(echo "${service_status}" | jq -r '.services[0].deployments[] | select(.id == $deployment_id)')" --arg deployment_id $new_deployment_id

But I don't think I understand other team's use cases enough to know if there's always a singular new deployment ID for each workflow run.

It'd also be neat to use aws ecs wait services-stable but it doesn't give regular updates on stdout or stderr :/

Examples

Before this PR
Skate, workflow FP
For completeness, here's a false positive workflow success when the circuit breaker actually stopped the deploy
After this PR
Circuit Breaker Jobs (Skate)
Successful deploy:

Deployment complete.

Failing deploy, health check failure

The deployment failed because one or more containers stopped running. The reasons given were:
Task failed ELB health checks in (target-group arn:aws:elasticloadbalancing:us-east-1:***:targetgroup/skate-dev-green-alb/***)

Failing deploy, application failure

The deployment failed because one or more containers stopped running. The reasons given were:
Essential container in task exited

Non-Circuit Breaker Jobs (Arrow)
Successful deploy:

Deployment complete.

Unsuccessful deploy, health check failure:

The deployment failed because one or more containers stopped running. The reasons given were:
Task failed ELB health checks in (target-group arn:aws:elasticloadbalancing:us-east-1:***:targetgroup/arrow-dev-alb/***)

Unsuccessful deploy, application failure

The deployment failed because one or more containers stopped running. The reasons given were:
Essential container in task exited

Superseded by #48 and #47


Columns in drag and drop quizzes are swapped

Describe the bug
Each drag and drop quizzes have 2 columns where they values are swapped, means column 1 contains values of column 2 and vise versa. See attached screen shot. Left side is rendered right side is original.
To Reproduce
Steps to reproduce the behavior:

Install nvm-windows
Install udacimak v1.4.5 (to have video quality 720pxls)
Download and render nd025 (dsnd)

Expected behavior
Rendered successfully, need to check content (see screen-shot)
Desktop (please complete the following information):

OS: Windows 7 x64
Node version: v13.12.0
npm version: 6.4.14
Udacimak Version: v1.4.5.
Browser:  Chrome

Course Information

Nanodegree or Course name: [Data Scientist Nanodegree]
Version: ...
Locale: en-us

Additional context
Add any other context about the problem here.

Could you please send me all the data.json files to<EMAIL_ADDRESS>so I can have a look?


manifest order

closes #570
Added preserveManifestOrder setting to determine whether or not to display the manifests in a particular order. By default, Mirador does the original behavior - displaying items in the manifest page as they resolve, because preserveManifestOrder is set to false.  If set to true the code attempts to determine the index value for that manifest and insert it properly according to the other manifests that have already been added to that page. If the index value for a manifest is not available for some reason (i.e. added by URL or the URI in the data array does not match the URI in the manifest itself), default to adding them to the top, as Mirador typically adds them.

Coverage increased (+0.3%) to 40.652% when pulling 19e4d43c54ffb5f3539dc234e09d6cfd82d9d7f0 on 200-manifest-order into 6cf7f91b97e2afe943b898aa04391bba46e12a22 on release2.1.

Neat.

👍  for tests!

Hi, I have just been exploring the "preserveManifestOrder" option and it does not seem to be working in the current version. I just wanted to check if it was supposed to be working yet?
Thanks

Hmm, I will take a look @jpadfield

You are right, something is not working correctly. I reopened #570.  If you have any more info, please add it to that ticket.

OK, Thanks, I do not have any specific new information but I will add
anything new when it comes up. If you need me to test anything please
let me know.
Joe
On 18/10/16 09:36, Rashmi Singhal wrote:

You are right, something is not working correctly. I reopened #570
https://github.com/ProjectMirador/mirador/issues/570. If you have
any more info, please add it to that ticket.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ProjectMirador/mirador/pull/943#issuecomment-254443127,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AQ7Htfx9jYmp7hGRWMoWrSqDjaT7iu2cks5q1IUogaJpZM4Iru6j.

--
Joseph Padfield
Conservation Scientist
Scientific Department
The National Gallery
Trafalgar Square
London WC2N 5DN
+44 (0)20 7747 2553
http://research.ng-london.org.uk
http://www.twitter.com/JoePadfield


uArch dependency support

WARL CSRs can now include hidden uArch dependencies in their YAML definitions.
the warl_class now creates a uarch_depends dict to support adding hidden uArch
signals to the dependency string in a CSR's YAML definition.

The prefix for such a signal/group must be uarch_. For example -

uarch_cachecontrol is a valid group/signal. In order to group signals under this
name, uarch_cachecontrol::global_valid and uarch_cachecontrol::global_dirty are
valid dependencies.
uarch_global_valid and uarch_global_dirty are valid signals. Such signals, for
parsing purposes are grouped with an implicit name uarch_commonconfig. This name
can not be used for any other micro-architectural signal dependency.

Any such signals/groups will be excluded from error checks, and will evaluate to
True for legal checks.

Upon encountering such a signal/group, a warning statement will be logged:

[DEBUG]   riscv_config.checker: -- Checking reset values for csr: mtvec::base
[WARNING] riscv_config.warl: WARL for csr mtvec::base depends on uarch csr uarch_global_valid. Treating this as a uarch dependency and excluding from all furtherchecks.
[DEBUG]   riscv_config.warl: uArch dependencies are: {'uarch_commonconfig':['uarch_global_valid']}
[WARNING] riscv_config.warl: WARL for csr mtvec::base depends on uarch csr uarch_global_dirty. Treating this as a uarch dependency and excluding from all further checks.
[DEBUG]   riscv_config.warl: uArch dependencies are: {'uarch_commonconfig': ['uarch_global_valid', 'uarch_global_dirty']}
[DEBUG]   riscv_config.warl: ---- WARL Value Legality Check: value:0 csr:mtvec::base dependency_vals:None
[WARNING] riscv_config.warl: csr/subfield uarch_global_valid is a uArch dependency.
[WARNING] riscv_config.warl: csr/subfield uarch_global_dirty is a uArch dependency.
[DEBUG]   riscv_config.warl:  warl legal string "uarch_global_valid[3:0] in [0] and uarch_global_dirty[3:0] in [0] -> base[61:0] bitmask [0x3FFFFFFFFFFFFFFF, 0x0000000000000000]" treats the input value 0 as legal

Such signals will show up in the checked YAMLs as follows:

if grouped --
warl:
  dependency_fields: [uarch_cachecontrol::global_valid, uarch_cachecontrol::global_dirty]
  legal:
    - global_valid[3:0] in [0] and global_dirty[3:0] in [0]
      -> base[61:0] bitmask [0x3FFFFFFFFFFFFFFF, 0x0000000000000000]
  wr_illegal:
    - Unchanged

or if not grouped --
warl:
    dependency_fields: [uarch_global_valid, uarch_global_dirty]
    legal:
        - uarch_global_valid[3:0] in [0] and uarch_global_dirty[3:0]
        in [0] -> base[61:0] bitmask [0x3FFFFFFFFFFFFFFF, 0x0000000000000000]
    wr_illegal:
        - Unchanged

Please update the docs for warl(link) with the corresponding information.

ready for review @pawks


[docs] Update Testing.md

Add details on 32-bit testing with an iOS simulator.

Cool
@swift-ci smoke test and merge

Unexpected failure:

Swift(linux-x86_64) :: AutoDiff/compiler_crashers_fixed/sr12650-noderivative-parameter-type-mangling.swift

Ugh, I've seen that failure before once in a blue moon. There's UB afoot.
@swift-ci smoke test Linux platform

Linux platform checks were successful.

⛵

I think the full command should be:
xcrun simctl create 'iPhone 5' com.apple.CoreSimulator.SimDeviceType.iPhone-5 com.apple.CoreSimulator.SimRuntime.iOS-10-3

(at least according to #31928)

@theblixguy The runtime argument is optional.
xcrun simctl help create

Create a new device.
Usage: simctl create <name> <device type id> [<runtime id>]

	<device type id>    A valid available device type. Find these by running "xcrun simctl list devicetypes".
	                    Examples: ("iPhone X", "com.apple.CoreSimulator.SimDeviceType.iPhone-X")
	<runtime id>        A valid and available runtime. Find these by running "xcrun simctl list runtimes".
	                    If no runtime is specified the newest runtime compatible with the device type is chosen.
	                    Examples: ("watchOS3", "watchOS3.2", "watchOS 3.2", "com.apple.CoreSimulator.SimRuntime.watchOS-3-2",
	                               "/Volumes/path/to/Runtimes/watchOS 3.2.simruntime")

For example:
xcrun simctl create 'iPhone 5' 'com.apple.CoreSimulator.SimDeviceType.iPhone-5'

No runtime specified, using 'iOS 10.3 (10.3.1 - 14E8301) - com.apple.CoreSimulator.SimRuntime.iOS-10-3'

Oh, I see. Sorry, I actually misread iPhone 5 as iPhone 5s! We don't need to worry about newer runtimes like iOS 11 and later so this is fine.


React & Redux group project - Space Travelers' Hub

React & Redux group project - Space Travelers' Hub 🤓
This project is a group capstone project to create a single-page web application based on the real live data from the SpaceX API. The application was biult with React and Redux, and provide an intuitive user interface to view Rockets, Missions and Dragos from the SpaceX API. Additionally, the application  use Jest to test all Raact components.
Members of the group:
@sanieni6  🧑💻
@johnie261 🧑💻
@Cabraham1 🧑💻
Summary

Set the project: Install React Redux, Redux Logger and React Router. ✅
Create routes and view components: rockets, dragons, missions, my profile. ✅
Use React documentation ✅
Use React components ✅
Use React props ✅
Use React Router ✅
Render fetch data from the SpaceX API endpoints ✅
Connect React and Redux ✅
Handle events in a React app ✅
Write unit tests with React Testing Library ✅
Use styles in a React app ✅
Use React hooks ✅
Apply React best practices and language style guides in code ✅
Write actions and reducers for booking/cancelation rockets/dragons and joining/leaving missions ✅
Perform a code review for a team member ✅

Demo of the project:

Hi team,
While you made a great effort in this project, unfortunately, I cannot proceed to review your code.

Invalid Code Review Request
You have submitted a project, that has missing sections on README. Kindly follow the README template and add the Acknowledgment section to your file. 📜
Your Code Review Request will be marked as invalid in your Dashboard, so please submit a new one once you are ready 🙏
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

Invalid Code Review Request does not count into the code reviews limit.

Changes done

Add Acknowledgments section to readme.md

Changes done

save only the selected data in the state


Transcrypt compilation error Python 3.7 Windows

I just tried the latest transcrypt on Python 3.7 Win7 with the simple program from https://github.com/bunkahle/Transcrypt-Examples/blob/master/alerts/alerts2.py but I got an compilation error:
transcrypt alerts2.py
Transcrypt (TM) Python to JavaScript Small Sane Subset Transpiler Version 3.7.16
Copyright (C) Geatec Engineering. License: Apache 2.0
Saving target code in: C:/Python37/Programme/Transcrypt/target/org.transcrypt.runtime.js
Saving minified target code in: C:/Python37/Programme/Transcrypt/target/org.transcrypt.runtime.js
Error while compiling (offending file last):
File 'org.transcrypt.runtime', line 0, namely:
[WinError 2] The system cannot find the specified file

I finally found out myself what went wrong. In case you get that error most probably Java is not installed on your machine which is needed to minify the javascript code which transcrypt seems to try by default. So just invoke the command:
transcrypt -n alerts2.py
and it runs without any error because -n disables minification of the code. BTW it would be nice if transcrypt would output an error message like "Warning: No Java installed - minification is disabled. Install Java for code minification." or the like and still output the not minified code. Or even better not rely on Java at all for code minification. Should be a three liner in Python I think.

Is Transcrypt really usable, when an prio1-issue dont is worked on over an year ?

Is Transcrypt really usable, when an prio1-issue dont is worked on over an year ?

@tcs-ulli the short answer is yes, it is.  I've been using it over the past year to create React/Material-UI apps without having to write any JavaScript code, just Python.  It has been a game changer for me in terms of being able to create front-end applications with Python.
The code base was stagnant for a while, but the maintainer has committed to continued support and was back to working on it as of this past November.  I don't want to necessarily speak for them, but their next goal was to get it working with Python 3.8/3.9 and then start tackling these other issues.  There are actually many prio1 issues in queue so I imagine it will take some time to work through them all.  Some (like this one) are perhaps more of an annoyance than a blocker since there are workarounds.

@tcs-ulli the short answer is yes, it is.  I've been using it over the past year to create React/Material-UI apps without having to write any JavaScript code, just Python.  It has been a game changer for me in terms of being able to create front-end applications with Python.
The code base was stagnant for a while, but the maintainer has committed to continued support and was back to working on it as of this past November.  I don't want to necessarily speak for them, but their next goal was to get it working with Python 3.8/3.9 and then start tackling these other issues.  There are actually many prio1 issues in queue so I imagine it will take some time to work through them all.  Some (like this one) are perhaps more of an annoyance than a blocker since there are workarounds.


Webhook cleanup

Massages the existing defaulting paradigm to more closely conform to the standard we have implemented across all operators

@abays I guess this requires changes in https://github.com/openstack-k8s-operators/openstack-baremetal-operator/pull/29 added to this for the precommit-check to pass.

@abays I guess this requires changes in #29 added to this for the precommit-check to pass.

It's weird.  I initially had them, but it then failed saying that it changed the file during CI checks because it was removing them.  And now it fails because it's adding them.  Not sure what is going on.


Don't work with "dist/" local directory

dploy not work when i use "dist" for local directory but work when i use an other name :
prod:     host: "ftp.myserver.com"     user: "myuser"     pass: "mypassword"     path:         local: "dist/"         remote: "www/"
Any solutions ?

I think, your dist folder is ignored by your .gitignore file
you could:

track this folder by git
OR use the include property to always reupload all the files in this folder

include:
        "dist/**/*": "dist/"

The solution proposed by @benavern is good. However, it defeats the entire purpose of Dploy when working with generated content. For instance, when using Jekyll, it's a good practice to put the content of your generated website in the .gitignore file. Having to manually include its content back into Dploy makes it that it defeats the use of the .rev file, as the content of the entire website is uploaded again.

@benavern thank you!


Add fillable fields to User model

In backend u can edit values, but in frontend fields do not update.

Thank you!


Add info issue

Adding an info about new contribution
Checkbox

[ ] Confirm that this PR is linked to the dataset issue.
[ ] Create the dataloader script nusantara/nusa_datasets/my_dataset/my_dataset.py (please use only lowercase and underscore for dataset naming).
[ ] Provide values for the _CITATION, _DATASETNAME, _DESCRIPTION, _HOMEPAGE, _LICENSE, _URLs, _SUPPORTED_TASKS, _SOURCE_VERSION, and _NUSANTARA_VERSION variables.
[ ] Implement _info(), _split_generators() and _generate_examples() in dataloader script.
[ ] Make sure that the BUILDER_CONFIGS class attribute is a list with at least one NusantaraConfig for the source schema and one for a nusantara schema.
[ ] Confirm dataloader script works with datasets.load_dataset function.
[ ] Confirm that your dataloader script passes the test suite run with python -m tests.test_nusantara --path=nusantara/nusa_datasets/my_dataset/my_dataset.py.
[ ] If my dataset is local, I have provided an output of the unit-tests in the PR (please copy paste). This is OPTIONAL for public datasets, as we can test these without access to the data files.

@SamuelCahyawijaya @afaji @bryanwilie @holylovenia can help check

looks good


VideoApp Response nested in SpeechletResponse?

An example response for videoApp directive on amazon docs looks like:
{   "version": "1.0",   "sessionAttributes": null,   "response": {     "outputSpeech": null,     "card": null,     "directives": [       {         "type": "VideoApp.Launch",         "videoItem": {           "source": "https://www.example.com/video/sample-video-1.mp4",           "metadata": {             "title": "Title for Sample Video",             "subtitle": "Secondary Title for Sample Video"           }         }       }     ],     "reprompt": null   } }
Is there another way to return directives so they are not nested inside a SpeechletResponse?
This is the output that is getting generated.
{ 	"version": "1.0", 	"response": { 		"speechletResponse": { 			"directives": [{ 				"videoItem": { 					"source": "https://www.example.com/video/sample-video-1.mp4", 					    "title": "Title for Sample Video", 						"subtitle": "Secondary Title for Sample Video" 					} 				} 			} 			] 		} 	}, 	"sessionAttributes": null }

Same issue was already reported in #70. The output you are getting is strange and doesn't seem to be possible using this library.
Could you provide complete code sample reproducing an issue?

Well it looks like something is happening between my service and amazon that is altering my response.  I must have some kind of configuration issue with the app.
My Response from the server is:
{     "response": {         "directives": [             {                 "videoItem": {                     "source": "https://video.internetvideoarchive.net/video.mp4?cmd=6&fmt=4&customerid=69249&publishedid=237393&e=1522934800&videokbrate=750&h=7c6e1603311ced87cb1be833f4fc1b75",                     "metadata": {                         "title": "The Matrix (Clean Trailer)"                     }                 },                 "type": "VideoApp.Launch"             }         ]     },     "sessionAttributes": null     },     "version": "1.0" }
When using the alexa console, this is getting translated to:
{   "version": "1.0",   "response": {     "speechletResponse": {       "directives": [         {           "videoItem": {             "source": "https://video.internetvideoarchive.net/video.mp4?cmd=6&fmt=4&customerid=69249&publishedid=384742&e=1522938851&videokbrate=750&h=fcaffb6bf7c807767fb1d1949cc28a8c",             "metadata": {               "title": "Jaws (Clean Trailer)"             }           }         },         {           "template": {             "title": {               "richText": "<big>The Video Detective</big>"             },             "backButtonBehavior": "VISIBLE"           }         }       ]     }   },   "sessionAttributes": null   } }


Consider an option for an explicit list of allowed methods

Currently, routing code would allow all methods the responders are implemented for. But this behavior makes it inconvenient if one wants to inherit the resource class. The only way to disallow method in a child class is to override all the responders which results in a bunch of useless code.
It would be nice to be able to set some resource attribute to a list of allowed methods.

@muodov thanks for the feedback. I'd like to learn more about how you are using inheritance. Could you provide more details on your use case?

@kgriffs Sure. In our application we store objects in mongodb, so in the code we have a base class called DocumentResource which handles all communication with the database. The base class accepts a collection name as an argument and it can get, put, and post objects.
Now, for specific documents we subclass DocumentResource and place the document-specific logic in there. The problem is, we want to provide different sets of actions for different kinds of objects. For example, we need to allow only GET method. In this case we need to explicitly override the parent methods for other HTTP methods so that they set falcon.HTTP_METHOD_NOT_ALLOWED status. This results in a lot of copypasted code and generally is quite error prone.

What about:
class MyResource(DocumentResource):
    model = Foo
    on_put = NotImplemented  # https://docs.python.org/2/library/constants.html#NotImplemented

I may also need this. For a similar resource subclass pattern.

Another option. This would override the default behavior of allowing all HTTP methods that have a corresponding on_* responder defined.
class SomeResource(DocumentResource):
    allow = ['GET']

@kgriffs I like your suggestion. It feels more natural for people coming from other frameworks, since they have similar concepts.


Issues rendering arrows

Latest doesn't render arrows for me:
Demo: https://codesandbox.io/s/11k31p2zj
I see other people reporting the same issue, but have closed them without posting a solution.

@Magneticmagnum It looks like that the background color of the arrows are white, hence they are not visible.
Just add
button.slick-arrow.slick-prev {
   background-color: black;
}

and you will see the previous button on the view.

Its a styling issue
using this styles in your codesandbox shows the arrows
const styles = {
  fontFamily: "sans-serif",
  textAlign: "center",
  background: "#ccc",
  padding: '50px'
};


Space scale - Look up by name

Hey! first of all thanks for all the work here! I enjoy so much using this library!.
I was finding myself trying to give names to the space theming instead of using array positions.
Instead of:
const theme = {
  space: [
    0, 4, 8, 16, 32, 64, 128
  ]
}

<Box m={[1, 4]}></Box>

Do:
const theme = {
  space: { xs: 4, s: 8, m: 16, l: 32, xl: 64, xxl: 128 }
}

<Box m={["xs", "l"]}></Box>

And I wanted to do it at a low level so I could then build on top things like (by using styled-system style helper):
<Box inset={["square-xs", "square-xl"]}></Box>

Question
Is there an official way of defining aliases to those props in the theme that are responsive? or to hook into the look up logic to have our own?
Current solution
So far I took advantage of how space is being used to look up for its values, so I switched it to an 'object literal' and added the 'indexes' as props as well as my aliases. But this seems fragile and might break if you consume spaces in a different way (since I imagine you expect an array there).
What I did:
const spaces = {
  0: 0,  //
  1: 2,  // xs
  2: 4,  // s
  3: 8,  // m
  4: 16, // l
  5: 32, // xl
  6: 64, // xxl
};

spaces["square-xs"] = `${spaces[1]}px`;
spaces["square-s"] = `${spaces[2]}px`;
spaces["square-m"] = `${spaces[3]}px`;
spaces["square-l"] = `${spaces[4]}px`;
spaces["square-xl"] = `${spaces[5]}px`;
spaces["square-xxl"] = `${spaces[6]}px`;

spaces["squish-s"] = `${spaces[2]}px ${spaces[3]}px`;
spaces["squish-m"] = `${spaces[3]}px ${spaces[4]}px`;
spaces["squish-l"] = `${spaces[4]}px ${spaces[5]}px`;
spaces["squish-xl"] = `${spaces[5]}px ${spaces[6]}px`;

spaces["xs"] = `${spaces[1]}px`;
spaces["s"] = `${spaces[2]}px`;
spaces["m"] = `${spaces[3]}px`;
spaces["l"] = `${spaces[4]}px`;
spaces["xl"] = `${spaces[5]}px`;
spaces["xxl"] = `${spaces[6]}px`;

const theme = { space: spaces }

How I use it:
<Box m={["l", "xl"]}></Box>

Or
import { style, space } from "styled-system";
export const Box = styled.div(
  space,
  style({
    prop: "inset",
    cssProperty: "padding",
    key: "space"
  }),

<Box inset={["squish-s", "squish-xl"]}></Box>

I think there's a few things going on here, so not sure if this will answer you're question, but with the theme.space array, you can define aliases or additional values directly on the array (similar to what you have above)
const space = [ 0, 4, 8, 16, 32 ]
space.big = space[4]
// Used like:
// <Box m='big' />

I'm not sure why the padding prop is being renamed to inset, but I generally wouldn't recommend using shorthand CSS syntax

Thanks!, yeap my bad, mixed a few things together. As for giving names to the space units, will do what you suggested. Im just curious if this is going to be a supported solution, since is not explicitly documented as part of the API.
Re: inset, maybe off topic but that is an attempt for having standard 'inset paddings' in my theme. I don't want developers to specify px py randomly I want them to use one of our pre built 'inset spacing conventions' while still taking advantage of responsiveness (inspired from here https://medium.com/eightshapes-llc/space-in-design-systems-188bcbae0d62. But I just realized I can use a new key in my theme and specify that when using the style custom utility. Anyway, if you have any thoughts on the topic, would appreciate your point of view.
Thanks! (feel free to close the issue)

Im just curious if this is going to be a supported solution, since is not explicitly documented as part of the API.

This is more about how objects & arrays work in JS than anything specific to this library, so I wouldn't plan on breaking this functionality
Going to close this out since I think the original issue has been addressed


Create a tester app for fancy zones that mimics different types of window configs

As we are developing fancy zones, we are encountering the wonders of the windows ecosystem and all the different ways windows can be created. This is great to see all the clever ways people do things.
We should create a mock app that simulates these so we can do automated testing with winappdriver
We when encounter a new app that we didn’t account for, this tester app needs to be updated.
It is ok if we have multiple apps to do all the testing :)

Closing this for now since in the recent months we haven't had issues with regard to properly processing newly created windows.
We still have app-compatibility issue to detect dragged windows but it was never the goal of this test app to cover that scenarios.

Closing this for now since in the recent months we haven't had issues with regard to properly processing newly created windows.
We still have app-compatibility issue to detect dragged windows but it was never the goal of this test app to cover that scenarios.


Add 'LyraHosting' to the list of merchants

Closes #1194

Hello guys,
Have you approved this?

Yes. erciccione approved it and luigi1111 merged it.


Merge with caution: Fix npm audit warnings

Node-gyp is throwing warnings in node v11 thanks to a lack of maintenance. Switched over to my branch which has I fixed the issue. This is the reason for the warning, if you merge this it will work but you will also not be pointed at the main fork for node-gyp.

Sorry, I PR template mentions we do not accept bumping request PRs


Warrior 30% melee starting stat

Warriors do not have 30% melee damage reduction at the beginning.

You mean I don't have it in the planner? Is it still in the game? I don't remember what I did about it when starting the planner :(


Formkit/Vue causes Nuxt errors if Vue versions don't match

Reproduction
http://no-preview.org
Describe the bug
I was getting preview failures in my nuxt project.
[nuxt] [request error] [unhandled] [500] Cannot find module '/Users/joshdel/Documents/code/uwp-ssr-v3/.output/server/node_modules/vue/server-renderer/index.mjs' imported from /Users/joshdel/Documents/code/uwp-ssr-v3/.output/server/chunks/handlers/renderer.mjs
I noticed Formkit was using it's own version of Vue, vs Nuxt's version of Vue.
joshdel@LT-FRMACJOSHDEL uwp-ssr-v3 % yarn why vue
yarn why v1.22.19
[1/4] 🤔  Why do we have the module "vue"...?
[2/4] 🚚  Initialising dependency graph...
[3/4] 🔍  Finding dependency...
[4/4] 🚡  Calculating file sizes...
=> Found<EMAIL_ADDRESS>info Has been hoisted to "vue"
info Reasons this module exists
   - Hoisted from "nuxt#vue"
   - Hoisted from "@vueuse#nuxt#nuxt#vue"
info Disk size without dependencies: "2.19MB"
info Disk size with unique dependencies: "8.24MB"
info Disk size with transitive dependencies: "17.43MB"
info Number of shared dependencies: 18
=> Found "<EMAIL_ADDRESS>info This module exists because "@formkit#nuxt#@formkit#vue" depends on it.
info Disk size without dependencies: "2.21MB"
info Disk size with unique dependencies: "8.25MB"
info Disk size with transitive dependencies: "17.45MB"
info Number of shared dependencies: 18

I noticed formkit/Vue has Vue as a normal dependency vs peer or dev dependency, can it be changed?  It seems most of your other packages are that way, and I would assume anyone using Formkit would first have to have Vue already installed.
After I updated my package.json to include
"resolutions": {
    "vue": "3.4.15"
  }

it fixed my issue with Nuxt, but I really shouldn't have to do this.
Environment
Nuxt 3.9.0
Formkit 1.5.0

In theory they should resolve to the same version, but I’ve seen this happen too. We originally used to specify peerDependencies instead of dependencies but switched because it was leading to a different set of issues too 😂
That said — I 100% agree that semantically, strategically, spiritually, and emotionally these vue should be a peerDependency and related, @formkit/vue should be a peerDependency for @formkit/pro too. So in summary, we should probably make this change and fight the other issues that cropped up from using peerDeps instead of the ones that crop up using deps.


[HTTP] Add pretty and preview to response bodies

Requirements
For HTTP responses:

A pretty subtype is added to the body component, which uses a formatting and syntax-highlighting similar to VSCode.
A safe preview subtype is added to the body component, which renders the response content without downloading any extra resources and without running JavaScript. For now, only text/html rendering is needed, but later could also add images, CSS and JavaScript.
It makes sense to make pretty the default (first) subtype

preview added using <iframe sandbox ...>. Probably good enough for now. pretty will be added later, probably once the Notebook API settles down on VS Code, and I can embed the native editor in the client webview.


Unable to kick user from a channel | Missing Property botId

Description
I can't find any info on this and still new to Bolt and Slack which both have quite difficult structure to understand. Currently I am trying to add then kick a user to/from a channel. While adding a user seems to be working fine I cannot remove any because of the error: error: 'restricted_action'.
I found a couple of issues on this repository similar to what I have but seems like they're outdated, since they recommend using as_user, which is now deprecated. It appears that Bot doesn't have sufficient permissions to kick anyone with a regular Bot token so I went ahead and replaced it with a User token. I hoped that fix it and provided it access to admin scope.
Now I am getting the following error message when trying to kick user from channel:
code: 'slack_bolt_context_missing_property_error',
missingProperty: 'botId'

I searched it up, there are exactly 2 results on Google. I also found there's a way for an OAuth authorization, but then bot acts directly from my user account, which is not something I want to happen.
The code looks like this:
const app = new App({
  token: tokenUser,
  signingSecret: signinsecret,
  appToken: appToken,
  socketMode: true,
  developerMode: true
});

app.message('bye', async ({ message, say, client }) => {
  try {
    await client.conversations.kick({
      channel: CHANNELID,
      user: message.user
    });
    await say(`Bye<EMAIL_ADDRESS>you've been successfully kicked!`);
  }
  catch(e) {
    console.error(e);
  }
});

(async () => {
  await app.start(process.env.PORT || 3000);
  console.log('Bolt app is running!');
})();

What type of issue is this? (place an x in one of the [ ])

[ ] bug
[ ] enhancement (feature request)
[x] question
[ ] documentation related
[ ] example code related
[ ] testing related
[ ] discussion

Requirements (place an x in each of the [ ])

[x] I've read and understood the Contributing guidelines and have done my best effort to follow them.
[x] I've read and agree to the Code of Conduct.
[x] I've searched for any related issues and avoided creating a duplicate issue.

Reproducible in:
package version: 3.3.0
node version: 14.16.0
OS version(s): Windows 10
Steps to reproduce:

Run the code above
Add bot to the any channel
Type "bye" in that channel

Expected result:
Bot to successfully remove a non-admin user from a channel.
Actual result:
Error:
code: 'slack_bolt_context_missing_property_error',
missingProperty: 'botId'

@misscoded Thank you. It is finally working. Though I am a little lost. It works under my personal Slack profile now. Is it possible to make it act on its own instead of using my name? I assume it is because of usertoken, though, it makes no sense. Bot is unable to kick with the bot permissions, but is able to do so when logged in to my account?

@Levelleor

It works under my personal Slack profile now. Is it possible to make it act on its own instead of using my name?

Unfortunately, as the app is working on behalf of you (using your user token), it's not possible to let your app behave as a bot user. All the options I can suggest are:

Use an admin user's user token, not yours (you may be an admin but using a different user can be easier to understand for the members in the workspace)
Change the workspace settings to allow bots to do this operation (probably, this is not feasible though)

Perhaps, both options are not desirable but I hope this was helpful to you. As we've already provided an answer to your original question here, would you mind closing this issue?


Here is the book of Python Programming (#3973)

Python Programming Book, Solution for #3971 issue.
Hacktoberfest notes:

due to volume of submissions, we may not be able to review PRs that do not pass tests and do not have informative titles.
please read our contributing guidelines
be sure to check the output of Travis-CI for linter errors
if this is your first open source contribution, make sure it's not your last!

What does this PR do?
Add Resource(s) | Remove Resource(s) | Add info | Improve Repo
For resources
Description
Why is this valuable (or not)?
How do we know it's really free?
For book lists, is it a book? For course lists, is it a course? etc.
Checklist:

[ ] Not a duplicate
[ ] Included author(s) if appropriate
[ ] Lists are in alphabetical order
[ ] Needed indications added (PDF, access notes, under construction)

The repo does not host books. Please read CONTRIBUTING.md guidelines


Unable to deskew the image

I used following commands to deskew input image
------python skew_detect.py -i 146_b.bmp
------./deskew.py -i 146_b.bmp -d Yes -o test.bmp -r 80
deskew.py line 1: Deskews file after getting angle: command not found

Hi @tejakundaikar,
try python deskew.py -i 146_b.bmp -d Yes -o temp.bmp

Thanks sir...Its working fine

Marking this as resolved.


Feature/badge improvements

Description
Fixes DG-393
A modifier class (badge-number) was added since badges with numbers currently are the most used version of badge, and need a different font than badge with text.
Text/numbers are still not perfectly center aligned. Suggestions on how to improve this are welcome

Codecov Report

Merging #183 into develop will increase coverage by <.01%.
The diff coverage is 100%.

@@             Coverage Diff             @@
##           develop     #183      +/-   ##
===========================================
+ Coverage    91.14%   91.15%   +<.01%
===========================================
  Files          126      126
  Lines         2101     2103       +2
===========================================
+ Hits          1915     1917       +2
  Misses         186      186

Impacted Files
Coverage Δ

src/App/Documentation/components/Badge/index.js
100% <100%> (ø)
: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 85835e4...2c95bc0. Read the comment docs.

Closed because of some technical problems with rebase/merge


Back camera not working in poseMatchingViewController

When I set up camera with back position it does not work in poseMatchingViewController

If you have any screenshot of the error message, plz comment.

Did you test on a simulator? If yes, the simulator does not support camera.

If you have more questions, reopen the issue feel free.


Fiducial Improvements

Summary
This MR adds the improvements I've worked on over the past couple days for TrackingMarkerObject to improve stability vs the current plugin implementation. Instead of just using the latest fiducial frame from the service as the truth for position, it's now a bit smarter and reconstructs the AprilTag frames Unity side. Using the reconstructed frames it figures out the position the object should be in by averaging the location of every tracked marker, with a bias towards the marker considered to have the least error from the platform (a value used at platform level and validated to be useful).
These changes have made a significant improvement to robustness in Barista - video can be found in the #sick_marker_demos channel!
Hopefully this is in a mergable state! I've left some debug visualisation stuff in as I feel it's useful to see what's happening under the hood, but feel free to remove it if you'd rather not have it there. If you select the object in scene you'll see:

A label on each tracked marker to show the error value
A label to show the AprilTag FPS
All marker root positions & forwards
The average forward and position used for positioning

Also if your markers have a child MeshRenderer they'll get updated to colours to represent their tracked state - green shows the one with bias, and orange shows tracked.
Contributor Tasks

[ ] Create or edit test cases here
[ ] Add a CHANGELOG entry for this change.
[ ] Ensure documentation requirements are met e.g., public API is commented.
[ ] Consider any licensing/other legal implications for this MR e.g. notices required by any new libraries.

Test Cycle
Link to the test cycle here.
Reviewer Tasks

[ ] Code reviewed.
[ ] Non-code assets e.g. Unity assets/scenes reviewed.
[ ] All tests must be ran and cover all scenarios (If not, add new tests to the cycle and run them).
[ ] Documentation has been reviewed.
[ ] Approve with a comment of any additional tests run or any observations.

Related JIRA Issues
If this MR closes any JIRA issues list them below in the form Closes PROJECT-#
Pull Request Templates
Switch template by going to preview and clicking the link - note it will not work if you've made any changes to the description.

default.md - for contributions to stable packages.
release.md - for release merge requests.

You are currently using: default.md
Note: these links work by overwriting query parameters of the current url. If the current url contains any you may want to amend the url with &template=name.md instead of using the link. See query parameter docs for more information.

One thing that needs fixing: if an object is not at 0,0,0 in the scene the offsets will go weird.
Additionally there should probs be a check to make sure the transform the user sets as the target transform isn't the object itself or any of its children :)