Should streams handle triggering reducers themselves?

I noticed that with the implementation of streamFactories you changed how the reducers were triggered.
I the original implementation this was done by RxSwift as such:
    // have the stateSubject subscribe to the dispatcher
    subjectDispatcher
        .scan(currentState, accumulator: reducer)
        .startWith(currentState)
        .subscribe(stateSubject)

So it used observables to trigger reducers.
In the updated version, you create a dispatch function - in the createStreamStore function -  which calls stream.dispatch with an explicit call to the reducer as a parameter
    func dispatch(action: Action) -> Action {
        stream.dispatch(reducer(stream.getState(), action))
        return action
    }

Should each individual stateStream handle how they trigger reducers themselves - or should we keep doing it manually in the createStreamStore function?
Or should we simply pass the stream.dispatch function directly to the store and let the implementation details be handled in the stream implementation?
I would like to document that one a bit better, so newcomers can understand how data flows through the framework. I can do that when we've decided on how to do it best.

I went back and forth a few time before settling on the store doing the reducing. What I found surprising was, using accumulators, reducers or subscribers from the RP frameworks was twice as slow as the explicit reduce in the performance test when dispatching 1000 IncrementActions.
I know it's not indicative of where cpu cycles are spent in real world applications.
The createStore function is pretty simple if we wanted one that pushed the reduce responsibility back to the framework.
Probably the only caution for users creating their own store is not to use a cold signal as it wont pass actions to the reducer until it's observed.

I think this is pretty well covered now with the removal of the StateStream and how easy createStore functions are to implement now.


What is the first model here? $model_{alien + human}$

Hi, I am curious what this first model in the table from your paper is -- I don't see this model listed in the appendix... image below
Thanks...

The only thing I might guess is that the prompt was "You are an alien and you are a human" 🤷

Thanks for catching this!
We note that you can find the code for all our examples in the scripts/examples.py file.
We will update the appendix in our next update of the Arxiv paper :)


LoadFromJSON taking longer than expected

Typically, the LoadFromJSON takes 15 minutes maximum, but the last two Fridays have taken roughly 40 minutes. Investigation into why the time has increased significantly.

Just noting that this has still been the case over the last two weeks.

This should be much faster now. @aclowery can you please verify? Thank you!

On Tuesday, this appeared to take under a minute to run the scheduled task.

Great 😄


0.5.0

Codecov Report

Merging #530 into master will decrease coverage by 1.99%.
The diff coverage is 36.1%.

@@             Coverage Diff             @@
##             master     #530     +/-   ##
===========================================
- Coverage     29.27%   27.27%     -2%
- Complexity     1231     1398    +167
===========================================
  Files           262      248     -14
  Lines          9715    12117   +2402
  Branches        929     1460    +531
===========================================
+ Hits           2844     3305    +461
- Misses         6670     8531   +1861
- Partials        201      281     +80

Impacted Files
Coverage Δ
Complexity Δ

...ase/src/main/java/com/almasb/fxgl/ui/Position.java
100% <ø> (ø)
1 <0> (?)

...almasb/fxgl/core/collection/ComparableTimSort.java
0% <ø> (ø)
0 <0> (?)

...a/com/almasb/fxgl/core/collection/QuickSelect.java
0% <ø> (ø)
0 <0> (?)

...base/src/main/java/com/almasb/fxgl/net/Client.java
0% <ø> (ø)
0 <0> (?)

...rc/main/java/com/almasb/fxgl/input/UserAction.java
62.5% <ø> (ø)
7 <0> (?)

...n/java/com/almasb/fxgl/core/collection/Select.java
0% <ø> (ø)
0 <0> (?)

...java/com/almasb/fxgl/core/collection/IntArray.java
0% <ø> (ø)
0 <0> (?)

...c/main/java/com/almasb/fxgl/ui/FXGLScrollPane.java
0% <ø> (ø)
0 <0> (?)

.../src/main/java/com/almasb/fxgl/core/math/Vec2.java
38.7% <ø> (ø)
31 <0> (?)

...rc/main/java/com/almasb/fxgl/saving/SaveEvent.java
0% <ø> (ø)
0 <0> (?)

... and 544 more

Continue to review full report at Codecov.

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


Slot BigInt (plutus) vs Slot(UInt32) (cardano-serialization-lib)

Which should we follow in general? Isn't 'lower bound' the safer way here?

Why change from BigInt to UInt? The Plutus Slot is a wrapped Integer

Originally posted by @ngua in https://github.com/Plutonomicon/cardano-browser-tx/pull/111#discussion_r808668313

I think if there is a conflict we should generally defer to CSL

It looks like we've settled on using a wrapped UInt for this


Proteus post-processing: time steps and variables

When I run Proteus I can get an xdf file which can be later opened in paraview. In paraview I seem to be able to visualise variable evolution with time, but I don't know exactly what I am visualising. I would prefer to visualise from python like you do in your notebooks, but I would still need the ability to get the value of the variables for particular time steps. Is it possible in the current code?
Currently I am doing something like
x = ns.modelList[0].levelModelList[-1].mesh.nodeArray[:,0]
u = ns.modelList[0].levelModelList[-1].u[0].dof
pylab.plot(x[0:-1],u[0:-1:3])
pylab.show()

to visualise my Burgers 1D u variable. This will show only the last time step. Please let me know if it's possible to get earlier time steps too.

Right now, we usually go back and extract the solution from the hdf5 file where it's stored. An example of some simple code that we're using to reading back solution snapshots is in the wip_add_deim branch under the test/POD/ directory. If you look at the test_svd_space_res function in test_deim.py you can see an example where we run a burgers equation and then go back and extract the solution snapshots from the xdmf archive and the corresponding hdf5 file.
Please note that the code is just experimental right now for helping us explore nonlinear pod in proteus. In particular, that snapshot reading isn't going to work in parallel.
@tweigand, you may want to check this out too as an example for doing the parameter estimation.

Thanks. This is great. It's convenient for me to actually read it from solution files. I can now recover the values from old time steps using the functions that I found in the directory. Can you just comment on two more things?

How can I get the time step value. Paraview clearly knows the time associated with the data. How can I recover it from xdmf?
What is the meaning of the columns

For instance now I am doing something like this
archive = Archiver.XdmfArchive(".", "burgers_kl_1d", readOnly=True)
label_base = "/{0:s}{1:d}"

# How to get a time step sequence?
u1 = read_from_hdf5(archive.hdfFile, label_base.format("u", 400))
u2 = read_from_hdf5(archive.hdfFile, label_base.format("u", 719))

# Why third column is so smooth? What is the meaning of the columns?
plt.plot(u1[0:-1:3])
plt.plot(u2[0:-1:3])
plt.show()

I am not worried about parallel at the moment. My post-processing will be definitely a single-processor, single-core adventure.

Here's an example of how to get the actual time step sequence:
for n,Time in enumerate(archive.tree.getroot().iter("Time")):
    print "t_n = ",Time.attrib['Value'],"\nn   = ",`n`

OK, that wasn't quite write because we write two grid  collections.  Here's a loop and plot commands for just  the dgp1 part
%matplotlib inline
import  matplotlib.pyplot  as plt
fig,ax = plt.subplots()
for a in archive.tree.getroot().iter("Grid"):
    if a.attrib['GridType'] == "Collection":
        if a.attrib['Name'] == "Mesh_dgp1_Lagrange":
            for n,Time in enumerate(a.iter("Time")):
                u = archive.hdfFile.getNode("/u0"+`n`)
                fig,ax = plt.subplots()
                ax.plot(u)
                plt.savefig("u%03d.png" % (n,))
                plt.clf()

Thanks a lot. That allowed me to get exactly what I wanted. I'll send you a stub of my presentation later on today.
    # Extract the number of time steps
    # Apparently Proteus creates a collection of grids
    M = 0
    for a in archive.tree.getroot().iter("Grid"):
        if a.attrib['GridType'] == "Collection":
            if a.attrib['Name'] == "Mesh_dgp2_Lagrange":
                Time = list(enumerate(a.iter("Time")))
                M = len(Time)

and in another place I could plot solutions for the time steps I wanted so I am all good. I started writing a little presentation about this.


Stop adding ="" to valueless html attributes

[See this discussion https://github.com/isagalaev/highlight.js/issues/1058]
How do I configure so that this:
<foo bar></foo>
...doesn't become this after it's ran through highlightjs:
<foo bar=""></foo>

Hi, I guess you already got the answer from isagalaev/highlight.js/issues/1058.
What you actually need is preventing your <foo bar></foo> to be parsed by browser before AngularJS  gets it hands on it.
hljs source or hljs include  can do the trick.
See #30 for the previous discussion.
An example of solving it with hljs-include
<div hljs hljs-include="'the-foo-bar-source'"></div>

<script id="the-foo-bar-source" type="text/ng-template">
<foo bar></foo>
</script>

Ahhh, gotcha. I think I was misunderstanding at what stage the attributes
were getting modified before rendering. This makes sense, thanks!
Chris
On Wed, Feb 3, 2016 at 11:26 AM Chih-Hsuan Fan<EMAIL_ADDRESS>wrote:

Hi, I guess you already got the answer from isagalaev/highlight.js#1058
https://github.com/isagalaev/highlight.js/issues/1058.
What you actually need is preventing your  to be parsed by
browser before AngularJS gets it hands on it.
hljs source
http://pc035860.github.io/angular-highlightjs/example/#/hljs-source or hljs
include
http://pc035860.github.io/angular-highlightjs/example/#/hljs-include
can do the trick.
See #30 https://github.com/pc035860/angular-highlightjs/issues/30 for
the previous discussion.
An example of solving it with hljs-include

—
Reply to this email directly or view it on GitHub
https://github.com/pc035860/angular-highlightjs/issues/60#issuecomment-179390293
.

--
Chris Fay
http://www.chrisfay.net
<EMAIL_ADDRESS>

BTW, you can also prevent from browser parsing by manually escaping those code you put inside hljs directive, and use it with hljs-no-escape option.
For example
<div hljs hljs-no-escape>
<foo bar></foo>
</div>


Refactor location fetch using watchPosition

Current useUserLocation and useCurrentObservationLocation try to fetch location until the accuracy is good enough, but they do so using the Geolocation library's getCurrentPosition() method. Given my experience in the field, I'm not convinced this actually works very well. I often see the fetch giving up when the accuracy is still 50m, especially while offline, whereas switching the native iOS app quickly gets the accuracy down below 10m.
Instead, I think we should attempt a refactor using the watchPosition() method, which would start that process up and receive location updates until the accuracy is good enough, and then stop watching. I've experimented with this approach a bit, but I struggled to successfully stop watching, but I was probably messing something up.
So the task here is to start by refactoring useUserLocation to use watchPosition(). It should expose the same API (i.e. the hook should return the same values).
I would not spend more than a day or two on this without taking stock and discussing.

Closed by https://github.com/inaturalist/iNaturalistReactNative/pull/1788


Old cache validation code

According to https://tools.ietf.org/html/rfc7234#section-4.3.3:
o  A full response (i.e., one with a payload body) indicates that
none of the stored responses nominated in the conditional request
is suitable.  Instead, the cache MUST use the full response to
satisfy the request and MAY replace the stored response(s).
This statement contradicts to your code in https://github.com/square/okhttp/blob/master/okhttp/src/main/java/okhttp3/internal/cache/CacheInterceptor.java (or okhttp3/internal/http/HttpEngine.java for older versions of library).
private static boolean validate(Response cached, Response network) {
if (network.code() == HTTP_NOT_MODIFIED) return true;

// The HTTP spec says that if the network's response is older than our
// cached response, we may return the cache's response. Like Chrome (but
// unlike Firefox), this client prefers to return the newer response.
Date lastModified = cached.headers().getDate("Last-Modified");
if (lastModified != null) {
  Date networkLastModified = network.headers().getDate("Last-Modified");
  if (networkLastModified != null
      && networkLastModified.getTime() < lastModified.getTime()) {
    return true;
  }
}

return false;
  }

According to new http spec (https://tools.ietf.org/html/rfc7234 from June 2014) we always should use network response despite its "Last-Modified" header.

Yep, can fix.


Spawn EH process with --expose-gc when in extension tests.

Fix #139139 - the Jupyter extension will use this in perf testing
It doesn't seem like there are any bad side effects to this besides it enabling the gc API.
cc @deepak1556 in case you know of a reason why we shouldn't do this.
cc @jrieken in case this is relevant to your interests

Thank you!


vscode typescript monorepo error

VSCode Version: Version 1.31.1 (1.31.1) 1b8e8302e405050205e69b59abb3559592bb9e60
OS Version: macOS Version 10.14.3 (18D109)

Steps to Reproduce:
see : https://github.com/xiaoxiangmoe/vscode-typescript-monorepo-error

Does this issue occur when all extensions are disabled?: Yes

@xiaoxiangmoe Simply importing type script from a module into another typescript file will not work. The other projects typescript must be compiled first. I think you need to look into Project References:
https://www.typescriptlang.org/docs/handbook/project-references.html
This will tell the tsc compiler to build that other project along side the main project.

@duro I use parcel and it will work. Because it support something like https://github.com/parcel-bundler/parcel/pull/1101

If you'd like to compile it first, run yarn workspace the-answer-to-life-the-universe-and-everything build.

Closing due to lack of recent activity


Certificate last used

This might be out of the question due to the possible 1 query per request requirement but would it be possible to a last_used field on trusted certificates?
Its probably a niche issue because I end up recycling certs alot but I have about 120~ certs trusted on my system and its hard to know (without scripting) which ones I can delete.

Hmm, yeah, I can see how that'd be useful but indeed I don't think it's something we can realistically do.
This is one a code path where we really really can't be hitting the database every time. Most LXD requests are made of around 3 HTTP requests, if each one of those needs a database write, overall performance will drop like a rock.
It's a codepath which is already optimized currently specifically to never access the database. We load up all certificates from the database into memory on startup and update that set whenever the database is updated. This is done specifically to avoid performance slowdowns due to accessing the certificate table.
I definitely see how having the data would be useful, but I can't think of a way to provide that without significant performance degradation. Worth noting that if someone needs this kind of data from an auditing point of view, it would be pretty easy to build a third party tool which hits /1.0/events?type=lifecycle and then keeps track of the requestor field (which includes the certificate).
This would let you track the last action triggered by a particular certificate just by listening for LXD events and keeping your own state.

@stgraber  thanks for the work around, as I suspected it's was unrealistic expectation from the LXD team.
At least its now documented and if in 3 years you add it I can be quietly sanctimonious as I was with (#5955) ;)


Bug: Span-17B check displayed when Importing a clean file

Issue:
When importing a clean MP file, the SPAN  -17B is being displayed preventing the Import process from being completed. This check is not valid for the data being imported
Steps to Recreate:

Export a MP file for Charles R Lowman
Login to ECMPS and Import the file that you exported for Charled R Lowman
System displays a SPAN-17B check. This is not supposed to be displayed as we are importing a clean file

Bug resolved, Can import  Charles R Lowman MP


Nested "checked" -> "unchecked" -> "checked" -> "unchecked" chain only copies first level of "unchecked" to the next date

I love the feature of Obligator in which checked items are automatically removed on the next date's note.
A great edge case is when some parent item is checked but a child item isn't - the next date's note still contains the parent item, and you therefore see the child item (as desired).
However, a further edge case exhibits a bug: when there is a chain of "checked" -> "unchecked" -> "checked" -> "unchecked" items. In this case, it seems only the first level of "nesting" of the "unchecked" items are carried over to the next date's note.
Screenshots of a a before/after scenario follow:
BEFORE (Note for Date A):

AFTER (Note for Date B, the next note following Date A):

You can see from the screenshots that only the first "level" of unchecked items was carried over. Specifically, the second "level" unchecked item - "Leave Oona-Gold on until months and all Backblaze is complete..." - was not carried over to the next note.
Hopefully at some point you or somebody may have time to get this bug ironed out!
Love this plugin! I use it regularly. Thanks!

@daniel347x Hi, I am unable to recreate this issue. I tested with a stripped down version of the example you gave. Is it possible that the note was not saved when you clicked "today's obligator note?" If you had just unchecked that, then clicked, the last note may not have been written.

OK, I cannot reproduce it myself:

I am quite meticulous so there must have been some edge case I struck in the original posting, but it very well may be unrelated to the issue described.
Thanks! Seems the issue can be closed.


Path in mix-manifest won't detect correct server url.

My production app resides in a subfolder, example.com/laravel.
Apparently mix-manifest only assumes that my app is installed in the root folder, so that assets always point to example.com/js/..... and the like but not example.com/laravel/js/.
Therefore when I push my code to the server, the assets won't show correctly.
I am not sure if this is a bug or what, is there any way to fix it?

Use url() or asset() helper.
Example:
url(mix('js/app.js'))
asset('js/app.js')

<link rel="stylesheet" href="{{ asset('js/plugins/iCheck/all.css') }}"> does not seem to reflect subdirectories (using mix with laravel 5.4.20). It's still displaying the root URL.


fix: Thread layout - message input position

🎯 Goal
Based on https://getstream.slack.com/archives/C012FGW0XJS/p1655813378953279
🛠 Implementation details
Provide a description of the implementation
🎨 UI Changes
Add relevant screenshots

:tada: This PR is included in version 3.0.0-theming2.1 :tada:
The release is available on:

npm package (@theming2 dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Color is deprecated, please switch to Colors

See https://github.com/JuliaLang/METADATA.jl/pull/3769; we're about to make Color uninstallable on julia 0.4.
Transition info is here.

Right. I'll get on that, thanks.

Done, thanks.

Thanks!


GitLab -> GitHub mirror

[ ] Reverse mirror direction
[ ] GitLab CI/CD for notebook update (use MD705 runner)

Keep it as-is is okay.


Adding full cloud native python tutorial with azure container apps

I copied the entire raw lab from https://github.com/Azure-Samples/azure-opensource-labs/blob/main/cloud-native/containerapps-python-fastapi/README.md and then made changes to make sure that this tutorial works in simdem.

It would be better to do this work in a fork of their repo so that we can track the required changes and issue PR requests when appropriate. This may require a change in SimDem, if so let's raise an issue.
Leaving this PR here though so that we can work on this copy in case any changes are needed.

Am I right in thinking we are pushing these changes into the upstream repo? If so should we close this PR?

Yup, that makes sense to me given the current plan to implement changes in the open source labs. Let me close the PR.


Add a bst build --no-pull mode

See original issue on GitLab
In GitLab by [Gitlab user @samthursfield] on Aug 25, 2017, 18:03
I've been building CI pipelines like this where we bst build lots of systems. A lot of the time the artifacts are already cached at https://ostree.baserock.org. Each CI job takes time to download every artifact, which isn't really necessary as we just want to test that it builds.
It would be useful if we could say "run a build if necessary, but exit with success if the artifact exists in the remote cache" easily.

In GitLab by [Gitlab user @tristanvb] on Aug 25, 2017, 19:18
I'm not sure this is the right approach.
I'm rather more tempted to offer anything you want to know about an element or pipeline via bst show before launching an activity than adding more options to bst build.

In GitLab by [Gitlab user @sstriker] on Aug 25, 2017, 21:11
It is a particular use case of having a central job seeding the cache.  I'm a bit ambivalent whether this is implemented using multiple commands, a helper wrapper, or via an option.  I do think that this is a use case that every project will encounter.

In GitLab by [Gitlab user @samthursfield] on Aug 29, 2017, 10:17
That seems fair.
Actually I think using bst show I can already do what I want, something like this:
if [ $(bst show gnu-toolchain/stage2.bst --deps none --format '%{state}') == 'cached' ]; then
    bst show gnu-toolchain/stage2.bst
else
    bst build gnu-toolchain/stage2.bst
fi

It would be nice if this was neater, but perhaps that could be solved with a shell function ...

In GitLab by [Gitlab user @samthursfield] on Aug 29, 2017, 10:17
closed

In GitLab by [Gitlab user @samthursfield] on Aug 29, 2017, 13:22
reopened

In GitLab by [Gitlab user @samthursfield] on Aug 29, 2017, 13:23
closed

In GitLab by [Gitlab user @samthursfield] on Aug 29, 2017, 15:13
mentioned in commit baserock/definitions[Gitlab user @3458d7369246f83f26f802bf9d9827c67cf40f69]


KAFKA-2824: MiniKDC based tests don't run in VirtualBox

This is a hack which works. Is there a better way?
Build (v2) of the replication_test.py running here: http://jenkins.confluent.io/job/kafka_system_tests_branch_builder/185/

Yeah, looks like the main problem is that MiniKDC generates its own KRB5 file and doesn't take any inputs regarding what to put there.
Since MiniKDC is a single file, perhaps we can just fork it into our tools package and modify the part that generates KRB5? Maybe fix the annoying bug in the log (hostname:hostname rather than host:port...) while we are at it. This will also get rid of Hadoop dependency that I don't like.
Another option is just to move our system tests to use a real Kerberos install on the VM. It will also give us debug tools like klist and kinit, which will be useful.

@gwenshap I think installing real Kerberos in the VM seems the best play overall. It would give us a better level of confidence around the whole deployment. I don't have a clear sense for how complicated that is or if it would affect our flexibility in any way. I haven't used Kerberos before. I know @harshach has a VM with Kerberos in, although it didn't work for me on first execution. Maybe you could comment on the complexity here @harshach?
I'm not sure forking MiniKDC buys us all that much, but it may be worth merging this as a temporary measure so that people can at least run Kerberos based tests locally.
Let me know what you want to do.

Eric Sammer has a handy Kerberos-install-and-configure-and-generate-keys script for Hadoop: https://github.com/esammer/krb-bootstrap
Perhaps we can "borrow" ideas :)

We have a clean build on the replication tests here: http://jenkins.confluent.io/job/kafka_system_tests_branch_builder/185/console
that should be sufficient if we want to merge this PR @granders @gwenshap

I couldn't get it to pass on my machine... VerifiableProducer is hanging. Did you see anything like that? Or is it just me?

@gwenshap it works fine for me. What did you run?

Replication test passes on EC2 too: http://jenkins.confluent.io/job/kafka_system_tests_branch_builder/209/console

Yeah, but the whole point is to pass on local machine...

Yep - the EC2 reading was just to confirm it does actually run there without issue too. I'm running the below locally. If you let me know where you hit a problem I can investigate further:
hub checkout https://github.com/apache/kafka/pull/520
...
./gradlew clean jar
...
$ ducktape --version
0.3.8

ducktape tests/kafkatest/tests/replication_test.py
...
test_id:    2015-11-19--015.kafkatest.tests.replication_test.ReplicationTest.test_replication_with_broker_failure.security_protocol=SASL_SSL.failure_mode=hard_bounce
status:     PASS
run time:   7 minutes 36.159 seconds
-------------------------------------------------------------------------------------------------------
test_id:    2015-11-19--015.kafkatest.tests.replication_test.ReplicationTest.test_replication_with_broker_failure.security_protocol=SASL_PLAINTEXT.failure_mode=hard_bounce
status:     PASS
run time:   8 minutes 19.682 seconds
-------------------------------------------------------------------------------------------------------
test_id:    2015-11-19--015.kafkatest.tests.replication_test.ReplicationTest.test_replication_with_broker_failure.security_protocol=SSL.failure_mode=hard_bounce
status:     PASS
run time:   7 minutes 28.375 seconds
... i killed it here.

OK, since it solves the issue for you and didn't cause new problems, I'll commit.
I think the local virtual-box tests have a lot more problems though...


There can be HTML tags inside a link

This problem can still happen inside links:

This is because in line 124 of index.js, we're just appending the string, instead of doing .text

let link_span = (" " + match2[0] + "";

Fixed on 3f80b81


matplotlib test_backend.py Does not display x-axis and y-axis labels

Hello:
I have tried all the distributions of raspberry .
Does not display x-axis and y-axis labels
https://groups.google.com/forum/embed/?place=forum%2Fkivy-users&hidesubject=true&hideforumtitle=true&showsearch=true&showpopout=true&parenturl=https%3A%2F%2Fkivy.org%2F%23&afterlogin#!topic/kivy-users/ESAtbp69zco

@luisrodriguezgonzalez, are you having the same issue on desktop?

Yes , I have the same problem.
Thank you for your attention

In all distributions raspberry

I'm asking if it happens on a desktop pc, something other than a raspberry.

It also looks like this is not a kivy issue but a bug in garden.matplotlib. You're testing with mpl 2.0.0rc1, but the code was written when mpl 1.5 was released, so it may be caused by a difference between mpl versions.

Hello:
This does not happen on windows 8.1
2016-12-20 11:40 GMT-03:00 dessant<EMAIL_ADDRESS>
It also looks like this is not a kivy issue but a bug in
garden.matplotlib. You're testing with mpl 2.0.0rc1, but the code was
written when mpl 1.5 was released, so it may be caused by a difference
between mpl versions.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kivy/kivy/issues/4831#issuecomment-268259469, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AXgtphw4sYrm91a1rQhv9K5G3zWGVzrOks5rJ-jmgaJpZM4LQvj3
.

@luisrodriguezgonzalez, could you share a log both for the windows and rpi test, when you run test_backend.py?

result raspberry , all distributions
2016-12-20 12:14 GMT-03:00 Luis Rodriguez<EMAIL_ADDRESS>
Result windows 8.1
2016-12-20 12:05 GMT-03:00 dessant<EMAIL_ADDRESS>
@luisrodriguezgonzalez https://github.com/luisrodriguezgonzalez, could
you share a log both for the windows and rpi test, when you run
test_backend.py?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kivy/kivy/issues/4831#issuecomment-268265855, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AXgtpsJAMJLevBorVQsVDtbORz9Rcdvsks5rJ-6qgaJpZM4LQvj3
.

log windows 8.1
C:\Python27\python.exe
C:/Users/Luis/PycharmProjects/kv/garden.matplotlib-master/examples/test_backend.py
[INFO              ] [Kivy        ] v1.9.1
[INFO              ] [Python      ] v2.7.8 (default, Jun 30 2014, 16:08:48)
[MSC v.1500 64 bit (AMD64)]
[INFO              ] [Factory     ] 179 symbols loaded
[INFO              ] [Image       ] Providers: img_tex, img_dds, img_gif,
img_sdl2, img_pil (img_ffpyplayer ignored)
[INFO              ] [Text        ] Provider: sdl2
[INFO              ] [OSC         ] using  for socket
[INFO              ] [Window      ] Provider: sdl2
[INFO              ] [GL          ] GLEW initialization succeeded
[INFO              ] [GL          ] OpenGL version <4.2.0 - Build
<IP_ADDRESS>08>
[INFO              ] [GL          ] OpenGL vendor
[INFO              ] [GL          ] OpenGL renderer <Intel(R) HD Graphics
4600>
[INFO              ] [GL          ] OpenGL parsed version: 4, 2
[INFO              ] [GL          ] Shading version <4.20 - Build
<IP_ADDRESS>08>
[INFO              ] [GL          ] Texture max size <16384>
[INFO              ] [GL          ] Texture max units <16>
[INFO              ] [Window      ] auto add sdl2 input provider
[INFO              ] [Window      ] virtual keyboard not allowed, single
mode, not docked
[INFO              ] [GL          ] NPOT texture support is available
[INFO              ] [Base        ] Start application main loop
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x000000000A3D5208>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x000000000A519FD0>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x000000000A636E80>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x000000000A5BBBE0>)
('mouse move to ', 0.0, 4.0)
figure enter mpl
('mouse move to ', 0.0, 6.0)
2016-12-20 12:15 GMT-03:00 Luis Rodriguez<EMAIL_ADDRESS>
result raspberry , all distributions
2016-12-20 12:14 GMT-03:00 Luis Rodriguez<EMAIL_ADDRESS>
Result windows 8.1
2016-12-20 12:05 GMT-03:00 dessant<EMAIL_ADDRESS>
@luisrodriguezgonzalez https://github.com/luisrodriguezgonzalez,
could you share a log both for the windows and rpi test, when you run
test_backend.py?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kivy/kivy/issues/4831#issuecomment-268265855, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AXgtpsJAMJLevBorVQsVDtbORz9Rcdvsks5rJ-6qgaJpZM4LQvj3
.

log raspberry
pi@raspberrypi:~/garden.matplotlib/examples $ python test_backend.py
[INFO   ] [Logger      ] Record log in
/home/pi/.kivy/logs/kivy_16-12-20_17.txt
[INFO   ] [Kivy        ] v1.9.2-dev0
[INFO   ] [Python      ] v2.7.9 (default, Sep 17 2016, 20:26:04)
[GCC 4.9.2]
[INFO   ] [Factory     ] 193 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif, img_sdl2,
img_pil (img_ffpyplayer ignored)
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [Window      ] Provider: egl_rpi
[INFO   ] [GL          ] OpenGL version <OpenGL ES 2.0>
[INFO   ] [GL          ] OpenGL vendor
[INFO   ] [GL          ] OpenGL renderer
[INFO   ] [GL          ] OpenGL parsed version: 2, 0
[INFO   ] [GL          ] Shading version <OpenGL ES GLSL ES 1.00>
[INFO   ] [GL          ] Texture max size <2048>
[INFO   ] [GL          ] Texture max units <8>
[INFO   ] [Shader      ] fragment shader:
[INFO   ] [Shader      ] vertex shader:
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not
docked
[INFO   ] [GL          ] NPOT texture support is available
[INFO   ] [OSC         ] using  for socket
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event0
[INFO   ] [HIDInput    ] Read event from </dev/input/event0>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event1
[INFO   ] [HIDInput    ] Read event from </dev/input/event1>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event2
[INFO   ] [HIDInput    ] Read event from </dev/input/event2>
[INFO   ] [Base        ] Start application main loop
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
[INFO   ] [Base        ] Leaving application in progress...
Traceback (most recent call last):
File "test_backend.py", line 140, in
MatplotlibTest().run()
File "/home/pi/kivy/kivy/app.py", line 828, in run
runTouchApp()
File "/home/pi/kivy/kivy/base.py", line 487, in runTouchApp
EventLoop.window.mainloop()
File "/home/pi/kivy/kivy/core/window/window_egl_rpi.py", line 90, in
mainloop
self._mainloop()
File "/home/pi/kivy/kivy/core/window/window_egl_rpi.py", line 85, in
_mainloop
EventLoop.idle()
File "/home/pi/kivy/kivy/base.py", line 327, in idle
Clock.tick()
File "/home/pi/kivy/kivy/clock.py", line 581, in tick
self._process_events()
File "kivy/_clock.pyx", line 368, in
kivy._clock.CyClockBase._process_events (kivy/_clock.c:7450)
File "kivy/_clock.pyx", line 398, in
kivy._clock.CyClockBase._process_events (kivy/_clock.c:7325)
File "kivy/_clock.pyx", line 396, in
kivy._clock.CyClockBase._process_events (kivy/_clock.c:7247)
File "kivy/_clock.pyx", line 168, in kivy._clock.ClockEvent.tick
(kivy/_clock.c:3251)
File "/home/pi/kivy/kivy/uix/boxlayout.py", line 311, in do_layout
c.size = (w, h)
File "kivy/properties.pyx", line 423, in
kivy.properties.Property.set (kivy/properties.c:5171)
File "kivy/properties.pyx", line 1295, in
kivy.properties.ReferenceListProperty.set (kivy/properties.c:20625)
File "kivy/properties.pyx", line 516, in
kivy.properties.Property.dispatch (kivy/properties.c:6614)
File "kivy/_event.pyx", line 1225, in
kivy._event.EventObservers.dispatch (kivy/_event.c:13524)
File "kivy/_event.pyx", line 1131, in
kivy._event.EventObservers._dispatch (kivy/_event.c:12723)
File
"/home/pi/garden.matplotlib/examples/libs/garden/garden.matplotlib/backend_kivy.py",
line 1179, in _on_size_changed
self.figure.set_size_inches(winch, hinch)
File
"/usr/local/lib/python2.7/dist-packages/matplotlib-2.0.0rc1_2670.gbf5aeb5-py2.7-linux-armv7l.egg/matplotlib/figure.py",
line 720, in set_size_inches
manager.resize(int(canvasw), int(canvash))
File
"/home/pi/garden.matplotlib/examples/libs/garden/garden.matplotlib/backend_kivy.py",
line 1247, in resize
Window.size(w, h)
TypeError: 'tuple' object is not callable
Modify the file line 1247    def resize(self, w, h):
#Window.size(w, h)        pass
result :
pi@raspberrypi:~/garden.matplotlib/examples $ python test_backend.py
[INFO   ] [Logger      ] Record log in
/home/pi/.kivy/logs/kivy_16-12-20_19.txt
[INFO   ] [Kivy        ] v1.9.2-dev0
[INFO   ] [Python      ] v2.7.9 (default, Sep 17 2016, 20:26:04)
[GCC 4.9.2]
[INFO   ] [Factory     ] 193 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif, img_sdl2,
img_pil (img_ffpyplayer ignored)
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [Window      ] Provider: egl_rpi
[INFO   ] [GL          ] OpenGL version <OpenGL ES 2.0>
[INFO   ] [GL          ] OpenGL vendor
[INFO   ] [GL          ] OpenGL renderer
[INFO   ] [GL          ] OpenGL parsed version: 2, 0
[INFO   ] [GL          ] Shading version <OpenGL ES GLSL ES 1.00>
[INFO   ] [GL          ] Texture max size <2048>
[INFO   ] [GL          ] Texture max units <8>
[INFO   ] [Shader      ] fragment shader:
[INFO   ] [Shader      ] vertex shader:
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not
docked
[INFO   ] [GL          ] NPOT texture support is available
[INFO   ] [OSC         ] using  for socket
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event0
[INFO   ] [HIDInput    ] Read event from </dev/input/event0>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event1
[INFO   ] [HIDInput    ] Read event from </dev/input/event1>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event2
[INFO   ] [HIDInput    ] Read event from </dev/input/event2>
[INFO   ] [Base        ] Start application main loop
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x711b3750>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x711b3950>)
2016-12-20 12:17 GMT-03:00 Luis Rodriguez<EMAIL_ADDRESS>
log windows 8.1
C:\Python27\python.exe C:/Users/Luis/PycharmProjects/
kv/garden.matplotlib-master/examples/test_backend.py
[INFO              ] [Kivy        ] v1.9.1
[INFO              ] [Python      ] v2.7.8 (default, Jun 30 2014,
16:08:48) [MSC v.1500 64 bit (AMD64)]
[INFO              ] [Factory     ] 179 symbols loaded
[INFO              ] [Image       ] Providers: img_tex, img_dds, img_gif,
img_sdl2, img_pil (img_ffpyplayer ignored)
[INFO              ] [Text        ] Provider: sdl2
[INFO              ] [OSC         ] using  for socket
[INFO              ] [Window      ] Provider: sdl2
[INFO              ] [GL          ] GLEW initialization succeeded
[INFO              ] [GL          ] OpenGL version <4.2.0 - Build
<IP_ADDRESS>08>
[INFO              ] [GL          ] OpenGL vendor
[INFO              ] [GL          ] OpenGL renderer <Intel(R) HD Graphics
4600>
[INFO              ] [GL          ] OpenGL parsed version: 4, 2
[INFO              ] [GL          ] Shading version <4.20 - Build
<IP_ADDRESS>08>
[INFO              ] [GL          ] Texture max size <16384>
[INFO              ] [GL          ] Texture max units <16>
[INFO              ] [Window      ] auto add sdl2 input provider
[INFO              ] [Window      ] virtual keyboard not allowed, single
mode, not docked
[INFO              ] [GL          ] NPOT texture support is available
[INFO              ] [Base        ] Start application main loop
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x000000000A3D5208>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x000000000A519FD0>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x000000000A636E80>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x000000000A5BBBE0>)
('mouse move to ', 0.0, 4.0)
figure enter mpl
('mouse move to ', 0.0, 6.0)
2016-12-20 12:15 GMT-03:00 Luis Rodriguez<EMAIL_ADDRESS>
result raspberry , all distributions
2016-12-20 12:14 GMT-03:00 Luis Rodriguez<EMAIL_ADDRESS>
Result windows 8.1
2016-12-20 12:05 GMT-03:00 dessant<EMAIL_ADDRESS>
@luisrodriguezgonzalez https://github.com/luisrodriguezgonzalez,
could you share a log both for the windows and rpi test, when you run
test_backend.py?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kivy/kivy/issues/4831#issuecomment-268265855, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AXgtpsJAMJLevBorVQsVDtbORz9Rcdvsks5rJ-6qgaJpZM4LQvj3
.

@luisrodriguezgonzalez, that for the logs, but these are different kivy versions. Please check if the bug is present with kivy 1.9.1 on rpi, and share a log. Or do the opposite and test kivy master on windows.

Hello:
I have installed version  kivy 1.9.1. in rpi.
1.- log
pi@raspberrypi:~/garden.matplotlib/examples $ python test_backend.py
[INFO   ] [Logger      ] Record log in
/home/pi/.kivy/logs/kivy_16-12-20_15.txt
[INFO   ] [Kivy        ] v1.9.1
[INFO   ] [Python      ] v2.7.9 (default, Sep 17 2016, 20:26:04)
[GCC 4.9.2]
[INFO   ] [Factory     ] 179 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif, img_sdl2,
img_pil (img_ffpyplayer ignored)
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [Window      ] Provider: egl_rpi
[INFO   ] [GL          ] OpenGL version <OpenGL ES 2.0>
[INFO   ] [GL          ] OpenGL vendor
[INFO   ] [GL          ] OpenGL renderer
[INFO   ] [GL          ] OpenGL parsed version: 2, 0
[INFO   ] [GL          ] Shading version <OpenGL ES GLSL ES 1.00>
[INFO   ] [GL          ] Texture max size <2048>
[INFO   ] [GL          ] Texture max units <8>
[INFO   ] [Shader      ] fragment shader:
[INFO   ] [Shader      ] vertex shader:
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not
docked
[INFO   ] [GL          ] NPOT texture support is available
[INFO   ] [OSC         ] using  for socket
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event0
[INFO   ] [HIDInput    ] Read event from </dev/input/event0>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event1
[INFO   ] [HIDInput    ] Read event from </dev/input/event1>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event2
[INFO   ] [HIDInput    ] Read event from </dev/input/event2>
[INFO   ] [Base        ] Start application main loop
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
[INFO   ] [Base        ] Leaving application in progress...
Traceback (most recent call last):
File "test_backend.py", line 139, in
MatplotlibTest().run()
File "/home/pi/kivy-1.9.1/kivy/app.py", line 828, in run
runTouchApp()
File "/home/pi/kivy-1.9.1/kivy/base.py", line 487, in runTouchApp
EventLoop.window.mainloop()
File "/home/pi/kivy-1.9.1/kivy/core/window/window_egl_rpi.py", line 89,
in mainloop
self._mainloop()
File "/home/pi/kivy-1.9.1/kivy/core/window/window_egl_rpi.py", line 84,
in _mainloop
EventLoop.idle()
File "/home/pi/kivy-1.9.1/kivy/base.py", line 327, in idle
Clock.tick()
File "/home/pi/kivy-1.9.1/kivy/clock.py", line 515, in tick
self._process_events()
File "/home/pi/kivy-1.9.1/kivy/clock.py", line 647, in _process_events
event.tick(self._last_tick, remove)
File "/home/pi/kivy-1.9.1/kivy/clock.py", line 406, in tick
ret = callback(self._dt)
File "/home/pi/kivy-1.9.1/kivy/uix/boxlayout.py", line 206, in do_layout
c.width = w
File "kivy/properties.pyx", line 408, in
kivy.properties.Property.set (kivy/properties.c:5515)
File "kivy/properties.pyx", line 446, in kivy.properties.Property.set
(kivy/properties.c:6348)
File "kivy/properties.pyx", line 501, in
kivy.properties.Property.dispatch (kivy/properties.c:7048)
File "kivy/_event.pyx", line 1224, in
kivy._event.EventObservers.dispatch (kivy/_event.c:14008)
File "kivy/_event.pyx", line 1130, in
kivy._event.EventObservers._dispatch (kivy/_event.c:13191)
File "kivy/properties.pyx", line 1215, in
kivy.properties.ReferenceListProperty.trigger_change
(kivy/properties.c:20263)
File "kivy/properties.pyx", line 1230, in
kivy.properties.ReferenceListProperty.trigger_change
(kivy/properties.c:20156)
File "kivy/properties.pyx", line 501, in
kivy.properties.Property.dispatch (kivy/properties.c:7048)
File "kivy/_event.pyx", line 1224, in
kivy._event.EventObservers.dispatch (kivy/_event.c:14008)
File "kivy/_event.pyx", line 1130, in
kivy._event.EventObservers._dispatch (kivy/_event.c:13166)
File
"/home/pi/garden.matplotlib/examples/libs/garden/garden.matplotlib/backend_kivy.py",
line 1179, in _on_size_changed
self.figure.set_size_inches(winch, hinch)
File
"/usr/local/lib/python2.7/dist-packages/matplotlib-2.0.0rc2_2771.g58a8334-py2.7-linux-armv7l.egg/matplotlib/figure.py",
line 720, in set_size_inches
manager.resize(int(canvasw), int(canvash))
File
"/home/pi/garden.matplotlib/examples/libs/garden/garden.matplotlib/backend_kivy.py",
line 1247, in resize
Window.size(w, h)
TypeError: 'tuple' object is not callable
Modify the file line 1247    def resize(self, w, h):
#Window.size(w, h)        pass
result :
pi@raspberrypi:~/garden.matplotlib/examples $ python test_backend.py
[INFO   ] [Logger      ] Record log in
/home/pi/.kivy/logs/kivy_16-12-20_16.txt
[INFO   ] [Kivy        ] v1.9.1
[INFO   ] [Python      ] v2.7.9 (default, Sep 17 2016, 20:26:04)
[GCC 4.9.2]
[INFO   ] [Factory     ] 179 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif, img_sdl2,
img_pil (img_ffpyplayer ignored)
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [Window      ] Provider: egl_rpi
[INFO   ] [GL          ] OpenGL version <OpenGL ES 2.0>
[INFO   ] [GL          ] OpenGL vendor
[INFO   ] [GL          ] OpenGL renderer
[INFO   ] [GL          ] OpenGL parsed version: 2, 0
[INFO   ] [GL          ] Shading version <OpenGL ES GLSL ES 1.00>
[INFO   ] [GL          ] Texture max size <2048>
[INFO   ] [GL          ] Texture max units <8>
[INFO   ] [Shader      ] fragment shader:
[INFO   ] [Shader      ] vertex shader:
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not
docked
[INFO   ] [GL          ] NPOT texture support is available
[INFO   ] [OSC         ] using  for socket
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event0
[INFO   ] [HIDInput    ] Read event from </dev/input/event0>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event1
[INFO   ] [HIDInput    ] Read event from </dev/input/event1>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event2
[INFO   ] [HIDInput    ] Read event from </dev/input/event2>
[INFO   ] [Base        ] Start application main loop
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x711e6470>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x71180730>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x711e6510>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x711d2fd0>)
2016-12-20 12:40 GMT-03:00 dessant<EMAIL_ADDRESS>
@luisrodriguezgonzalez https://github.com/luisrodriguezgonzalez, that
for the logs, but these are different kivy versions. Please check if the
bug is present with kivy 1.9.1 on rpi, and share a log. Or do the opposite
and test kivy master on windows.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kivy/kivy/issues/4831#issuecomment-268275316, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AXgtprjVw3yYpMHw1yaZYgm07nd8Lyoyks5rJ_b4gaJpZM4LQvj3
.

Thanks for the logs. I don't know if this is a kivy, mpl, or garden.matplotlib bug, we will have to wait for a contributor with an rpi to further debug. In the meantime you could do one last test 😁 and check if the labels are displayed or not with mpl 1.5.3 and kivy 1.9.1 on the rpi, no logs are required in this case.

hi :
I need to try but in URL :
https://sourceforge.net/projects/matplotlib/files/matplotlib/
does not exist version 1.5.3
can you help me with this?
2016-12-20 19:06 GMT-03:00 dessant<EMAIL_ADDRESS>
Thanks for the logs. I don't know if this is a kivy, mpl, or
garden.matplotlib bug, we will have to wait for a contributor with an rpi
to further debug. In the meantime you could do one last test 😁 and check
if the labels are displayed or not with mpl 1.5.3 and kivy 1.9.1 on the
rpi, no logs are required in this case.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kivy/kivy/issues/4831#issuecomment-268373133, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AXgtproVZo8bkyUlwY_hcypFTV0YsQuyks5rKFFmgaJpZM4LQvj3
.

pip install matplotlib==1.5.3

They have moved to github btw: https://github.com/matplotlib/matplotlib.

pi@raspberrypi:~/garden.matplotlib/examples $ python test_backend.py
[INFO   ] [Logger      ] Record log in
/home/pi/.kivy/logs/kivy_16-12-21_22.txt
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_gif, img_sdl2,
img_pil (img_ffpyplayer ignored)
[INFO   ] [Kivy        ] v1.9.1
[INFO   ] [Python      ] v2.7.9 (default, Sep 17 2016, 20:26:04)
[GCC 4.9.2]
[INFO   ] [Factory     ] 179 symbols loaded
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [Window      ] Provider: egl_rpi
[INFO   ] [GL          ] OpenGL version <OpenGL ES 2.0>
[INFO   ] [GL          ] OpenGL vendor
[INFO   ] [GL          ] OpenGL renderer
[INFO   ] [GL          ] OpenGL parsed version: 2, 0
[INFO   ] [GL          ] Shading version <OpenGL ES GLSL ES 1.00>
[INFO   ] [GL          ] Texture max size <2048>
[INFO   ] [GL          ] Texture max units <8>
[INFO   ] [Shader      ] fragment shader:
[INFO   ] [Shader      ] vertex shader:
[INFO   ] [Base        ] Adding binding for mouse move
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not
docked
[INFO   ] [GL          ] NPOT texture support is available
[INFO   ] [OSC         ] using  for socket
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event0
[INFO   ] [HIDInput    ] Read event from </dev/input/event0>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event1
[INFO   ] [HIDInput    ] Read event from </dev/input/event1>
[INFO   ] [ProbeSysfs  ] device match: /dev/input/event2
[INFO   ] [HIDInput    ] Read event from </dev/input/event2>
[INFO   ] [Base        ] Start application main loop
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
[INFO   ] [HIDMotionEvent] using
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x7137cd30>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x71408e70>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x71298250>)
('resize from mpl ', <matplotlib.backend_bases.ResizeEvent object at
0x71298690>)
Works thank you very much
2016-12-21 10:11 GMT-03:00 dessant<EMAIL_ADDRESS>
pip install matplotlib==1.5.3
They have moved to github btw: https://github.com/matplotlib/matplotlib.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kivy/kivy/issues/4831#issuecomment-268519474, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AXgtpsZS8zNU9EqiMtvbKl43bGUqW_41ks5rKSVkgaJpZM4LQvj3
.

You're welcome. Please open an issue for mpl 2.0 at https://github.com/kivy-garden/garden.matplotlib.
Some parts will have to be updated for the upcoming matplotlib release.

closed.
https://github.com/kivy-garden/garden.matplotlib/issues/45
2016-12-21 14:00 GMT-03:00 dessant<EMAIL_ADDRESS>
You're welcome. Please open an issue for mpl 2.0 at
https://github.com/kivy-garden/garden.matplotlib.
Some parts will have to be updated for the upcoming matplotlib release.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kivy/kivy/issues/4831#issuecomment-268575960, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AXgtpg8-OJx9IO7NUVZd_gzP3IDe9XkXks5rKVsigaJpZM4LQvj3
.


FIX: Add maximum character limit to shared code parameter to URL

Problem

When user has a long code and tries to report an issue, GitHub throws a bad request error.

Solution

When a user tries to share a long code example, then will see the message. Your input is too large to share. Please copy the code and paste it into the issue.

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

If user input exceeds limitation, a toast should be popped up, instead of modifying the text.

Hi @g-plane, can you please check it now?


feat(checkout): CHECKOUT-7549 Execute Commands within Extension Context

What?
checkout-js executes three extension commands.
Why?
Enable an extension to update checkout UI.
Testing / Proof

CI checks.

@bigcommerce/checkout

WIP: Working on adding unit tests.


Test addition of a stateful feature to Kismatic

As part of this release, we likely won't be introducing a feature that will make use of the new Gluster store. But we will want to test that addition of a stateful feature to the platform would work as expected -- that a specified NFS volume would be tested and used, that specified Gluster cluster would have a new volume created of the correct storage class, and that any feature that was introduced would result in a volume being claimed and named "kismatic."
Kismatic doesn't really have a model of a "feature" at the moment, so picking up this issue should include a design for detecting the "features" of a platform. A list of "existing features" has been produced on the Apprenda wiki (comment here if you would like and I will make copy here).
The test should include a Reader service and a Writer service with at least 2 pods of each.

[x] Whiteboard/brainstorm what the installation of a stateful feature looks like

Complete via #234


error (500): Untar re-exec error: exit status 1: output: open

RancherOS Version: (ros os version)
Cant start it up, so I'm not sure. Used latest version available when setting up in early May this year.
Where are you running RancherOS? (docker-machine, AWS, GCE, baremetal, etc.)
VirtualBox
Our system experienced an unclean shut down. During boot it stops with this error:
[INFO0000] Loading images from /usr/share/ros/images.tar
[  155.491214] EXT4-fs error (device sda1): __ext4_new_inode:1023: comm exe: failed to insert inode 13090967: doubly allocated?
[ERRO0000] API error (500): Untar re-exec error: exit status 1: output: open /6bf439f99fb33c158ac43a456ce7c577fd3a6dd6bb85fb1877926c94fbde815d/json: input/output error

[  454.679401] EXT4-fs (sda1): error count since last fsck: 31925
[  454.681709] EXT4-fs (sda1): initial error at time<PHONE_NUMBER>: ext4_lookup:1584: inode 1592148
[  454.685071] EXT4-fs (sda1): last error at time1466687881: ext4_lookup:1023: inode 1591844

Any thoughts on how to troubleshoot this?

Running fsck on the disk should fix the problem. Unfortunately, fsck isn't something that's included in the default RancherOS console. It might be easier for you to boot another Linux distro from ISO and run fsck /dev/sda. If you'd prefer, I can definitely provide a set of steps to do this from a container in the RancherOS ISO.
Running fsck on boot is something RancherOS should be doing, so I'll create a separate issue for that.


[20.09] Staging next

https://hydra.nixos.org/jobset/nixpkgs/staging-20.09
Motivation for this change
Things done
before merge

[ ] check hydra
[ ] check ofborg

"staging-next" PRs should have the target branch merged into it, to prevent additional rebuilds when merged back.

"staging-next" PRs should have the target branch merged into it, to prevent additional rebuilds when merged back.

That was the intent of d041d3a11429a41eefabfd9b456d0677b90d5526, but thanks for the update!

ah, my bad. Got "lost in the noise". Guess that's why my merge was relatively small in comparison

looks like hydra is having a lot of abort issues. I'm able to build most of the aborted/failing packages :(

@roberth The golang bootstrapping issue is fixed in https://github.com/NixOS/nixpkgs/pull/101843 - instead of reverting the tzdata bump, we should simply backport that fix, too.

@flokli #102504 adds the tzdata.
We don't have a staging vs staging-next here, so I hope other backports can wait until the next iteration of staging-20.09

Found https://github.com/NixOS/nixpkgs/issues/102937

tzdata will be done in some next iteration, when it has been reviewed and tested on unstable.

tzdata will be done in some next iteration, when it has been reviewed and tested on unstable.

How much breakage has it caused so far? Because to me it seems its been relatively minor.

@FRidh It looks minor, but the breakage has already delayed this iteration of staging-20.09 while it wasn't even the right solution. See #102946 . A real compatibility problem was masked by disabled tests.
I don't think users for the preceding commits should have to wait this long because we're still fussing around with "one more change".
I guess a staging/staging next workflow for the releases would be an improvement, but until we decide that, I'd like to have somewhat bounded iterations.

@roberth we could create a staging-release project, and just have the PR's queued to merge.
But I wouldn't be opposed to having a staging-20.09 and a staging-next-20.09.
Taking a step back and looking at the process though. Was there a way to prevent some of these backports before branch-off? Obviously security patches will trickle in, but a lot of these items look like they weren't stabilized (enough) during ZHF.

@roberth we could create a staging-release project, and just have the PR's queued to merge.
But I wouldn't be opposed to having a staging-20.09 and a staging-next-20.09.

Staging/staging-next was the first thing that came to mind, because we're using that for unstable.
A project might work and seems easy to implement but perhaps also less consistent. Reusing an existing process and potentially tooling for it at some point seems quite attractive. I think you're in a much better position to decide though.

Taking a step back and looking at the process though. Was there a way to prevent some of these backports before branch-off? Obviously security patches will trickle in, but a lot of these items look like they weren't stabilized (enough) during ZHF.

In hindsight, I'd consider the lack of a ghc on aarch64-linux a blocker, but I was unaware because admittedly I wasn't as active during ZHF. I use the releases normally; using unstable would be a way to discover this particular problem earlier, but I don't feel like the qa on unstable is sufficient. I've been thinking about the fact that with the current pace we seem to be releasing 1/3 of the time. I don't think that's a particularly meaningful metric, but still intriguing. What if master was a proper rolling release? ZHF would be instant and the only extra work goes into user testing and backporting after release.
Another factor contributing to the churn is that I couldn't know in advance that a package that built correctly on my hardware was going to fail because of an arbitrary restriction in hydra, the output size limit. nix-build can't tell you that.
The churn around tzdata was part bad luck, maybe part bad process. This time around, the format changed, which seems like an exceedingly rare event for a "boring" package like that. It's a package with high expectations of quality, to the point that Time-Effective Volunteerstm will assume that a test suite is at fault, rather than the timezone data format. That's the bad luck part.
Process-wise it could have been prevented by requiring a formal risk assessment for each update PR ;). Realistically, better testing automation would make it less labor-intensive and more reliable. A bot could bisect a set of changes and produce a list of failed logs per PR. The automation is nice, but what's better is that the errors are isolated and accumulated, which makes a big difference in this case. It's hard to judge a problem like this from a single test case, as people do when they encounter the single package that breaks for them. Having them together in a list makes it easier to see that it isn't an isolated problem and having all the logs helps with diagnosing the problem. I only realized the problem at the third log.
Ultimately we should try to catch mistakes earlier, but until we have automation to enforce that, I think we can emulate it by holding off changes to keep staging iterations short. If we don't enforce a green master, reverting seems like the most reliable way to keep it green.
Did I zoom out too much process-wise? :thinking: I do think it ties back to testing more and rejecting/reverting more.

I'd hope that this was only a rare situation.

Short term (til the next release), I think I'm going to go with just handling this with a project.
converting to a master-like workflow (staging + staging-next) would mean creating a staging-next-20.09 branch and a related hydra job set, and removing the current staging-20.09 jobset. Most of which I don't have permissions to do even if I wanted.
I'll bring this up in the release retro https://discourse.nixos.org/t/20-09-release-retrospective/9851, and we can discuss a way forward. Long term, I will probably advocate for reflecting the master process of having staging + staging-next branches for the release so that we can more easily "batch" changes, and not have to do as much "project management" with moving items around.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/20-09-release-retrospective/9851/9

Blocked on hydra build timeouts, see https://github.com/NixOS/hydra/issues/830

This iteration was stuck on darwin's ghc timing out. I'm starting the next mass-rebuild iteration hoping that hydra will pick up the updated timeout duration because of the new drv.

The new evaluation is https://hydra.nixos.org/eval/1626139
It's quite a mass-rebuild, but only the linux ghc is affected by the shadow rebuild. So I don't think the more lenient timeout for ghc will be picked up by hydra this time either.
I'll intentionally create a ghc 884 rebuild on darwin to see if that causes hydra to pick up the updated timeout for the new drv.

Here's the new evaluation https://hydra.nixos.org/eval/1626149
This will have an increased timeout for ghc on darwin, assuming Hydra picks up such settings when the drv is all-new.

Yes, I think Hydra will just reuse the job if the output hash is the same as in the previous evaluation.  What might work is to now revert that rebuild and re-eval :-)

if the output hash is the same as in the previous evaluation

However, if it looks up by drv globally rather than previous job, it will still be bad.

might

I'm a bit tired of this whole hydra timeout exercise tbh, but I appreciate the input.

I'm hopeful the current one will work.  I don't think the change will really cost anything (rebuilding just what failed anyway).  IIRC I once ran into this "issue" with a fixed-output derivation (bad download URL or something)...

this "issue" with a fixed-output derivation (bad download URL or something)...

That probably only worked because the output was cached, so the old derivation didn't have to be run after you reverted to it.

No, it was failed so it wasn't cached.  And I couldn't make Hydra retry it with fixed URL, because it was rerunning with the old one due to the output hash being the same (and thus thinking it's the same derivation).

Could be. It doesn't save any builds though, so I wouldn't bother.
Most of the builds are because of tzdata and shadow, not the darwin ghc rebuild, which seems to be quite independent. Nonetheless some packages will depend on both, so we're saving some build time by combining these changes.
Also if the darwin-only comment happens to stick around, it's not so bad because it will be made irrelevant by the next release.
I'd say there's not much we can do to improve things now.

Not sure how to compare the jobsets, but I've made an attempt by searching in staging-20.09 and opening the various release jobsets.
Do we have a documented method for comparing these?
Staging stats:
based on eg https://hydra.nixos.org/eval/1626407?filter=x86_64-darwin&compare=1626149&full=#tabs-still-fail
and adding the failure tabs
x86_64-linux: 69 failures
x86_64-darwin: 977 failures
aarch64-linux: still building, haskell works
Release stats:
x86_64-linux: ~160 failures
x86_64-darwin: 921 failures https://hydra.nixos.org/jobset/nixpkgs/nixpkgs-20.09-darwin
aarch64-linux: ~7000 because of broken haskell
Conclusion
Seems like a improvement. Will merge base again to check for rebuilds from release-20.09 changes. If those aren't too many, I think we can merge.
What do you think @vcunat @jonringer ?

Do we squash any commits?
tzdata was applied/reverted/applied. Thunderbird timeout was applied/reverted. postgresql: Fix timetz test failure 2× can be squashed into one.
That seems to be all the cleanup that can be done, if desired.

I guess there's no need to wait for aarch64, as that would probably take several more days, I'm afraid.  It sounds OK to me to merge as is (without rewriting history), but I don't mind if you/someone prefer to clean it up a bit instead.

Not sure how to compare the jobsets, but I've made an attempt by searching in staging-20.09 and opening the various release jobsets.
Do we have a documented method for comparing these?

we don't do this well even on unstable's staging/staging-next

Seems like a improvement. Will merge base again to check for rebuilds from release-20.09 changes. If those aren't too many, I think we can merge.

I would say we should move forward

Do we squash any commits?
tzdata was applied/reverted/applied. Thunderbird timeout was applied/reverted. postgresql: Fix timetz test failure 2× can be squashed into one.

If it already exists on one of the main NixOS/Nixpkgs branches (master, staging*, staging-next, release-*), I would avoid force-pushing at all. Ideally those commits and reverts should have been better tested before merging

Thanks everyone!


UTF read/write issues

I'm trying to use this amf javascript for an Air project that needed to migrate to HTML using Electron.
I'm having trouble with deserializing vectors type. I tried to debug with browser inspector, and when the type is 13, it throws an error exception.
Also, retrieving strings with Japanese characters returned garbish. I tried to escape the output string but still not getting the proper characters.
I have no direct access with the Server, thus I do not know how the flex service implemented.
By the way, using Charles proxy, I can see the response string properly (not garbaged).
Any help is much appreciated.
Thanks.

Hi,
I have just started using the library in a project and will put more time into it. Vector is not supported, and I can look into the UTF decoding.
Can you send me a Charles session with the request/response in question.

Thank you for your quick response.
Is there any way to support the Vector?
By the way, I solved the UTF decoding.
Here's my code for readUTF function.
`
var utflen = length ? length : this.readUnsignedShort();
var end = this.pos + utflen,
chars = [],
charCount = 0,
maxCharCount = 65535,
charArrayCount = 1,
result = [],
i = 0,
charArrays, byteCount, charCode;
charArrays = [chars];

while (this.pos < end) {
    charCode = this.read();
    if (charCode > 127) {
        if (charCode > 239) {
            byteCount = 4;
            charCode = (charCode & 0x07);
        } else if (charCode > 223) {
            byteCount = 3;
            charCode = (charCode & 0x0F);
        } else {
            byteCount = 2;
            charCode = (charCode & 0x1F);
        }
        while (--byteCount) {
            charCode = ((charCode << 6) | (this.read() & 0x3F));
        }
    }

    chars.push(charCode);
    if (++charCount === maxCharCount) {
        charArrays.push(chars = []);
        charCount = 0;
        charArrayCount++;
    }
}

for (; i < charArrayCount; i++) {
    result.push(String.fromCharCode.apply(String, charArrays[i]));
}

return result.join('');

`
How can I send you the Charles session?
Thanks again.

Send it to gmail (same username).
Sure, I think have seen that solution before.
I added Vector support to efxphp, so will see if I can come up with something.

I have fixed the UTF read/write functionality and added some tests. Will work on more tests in the future.
Will look into reading Vectors.

Opening a new ticket for Vector reading enhancement.

Thank you for your response. I forked your source and added the vector read support (so far it works with the data I received from the server). I also fix the ArrayCollection problem.
I will try your latest source and will incorperate the vector read support.
Again, thanks. ;)

Cool, glad you are making it work for you.
I had an uncommitted fix for traits, which resulted in problems with second typed object in arrays (or ArrayCollection if you server is BLAZEDS and you have it). You got that one right. I have fixed the UTF write as well :)
I have done the read, support (not 100% sure what to do with uint at the moment). Also doing write. Should be done today or tomorrow. Will post more comments in #14


Bug fix for surface obs generation.

Description
This PR is a bug fix for generating surface obs:

For surface obs, our purpose is to use line 112 to generate surface obs with "-noqc" option to keep as more observation as possible,  and use this file (generated by line 112) to replace previous one which generated by line 107 without "-noqc" option.

While the command at line 112 is not executed because the log file is pointed to the wrong path.

Issue closed
Closes #(if applicable)
Tests completed

[x] GenerateObs

@junmeiban  How many more Ps obs from '-noqc' option?

From the above figures, there are less Ps obs over ocean for 2023, comparing to 2018

Do you know what exactly QC is applied if we turn on QC for Ps processing?

For default ( ‘-qc’ =true), it’s corresponding to apply_gsi_qc in the source code and subroutine filter_obs_conv will be called. There are criterion in filter_obs_conv for sfc obs, such as pressure, observation quality marker(qm) to filter out obs:
https://github.com/NCAR/obs2ioda/blob/36f6e5100c55673ff3f3159c65532bba945c8a05/obs2ioda-v1/src/prepbufr_mod.f90#L915

Can you remind me why we want to turn QC off, specifically for Ps in the conversion step, but turn QC on for other obs types in prepbufr?

It's our experience from 2018 experiments. In this way we got more Ps + use background check when run DA. And we indeed got improvements.

Can you remind me why we want to turn QC off, specifically for Ps in the conversion step, but turn QC on for other obs types in prepbufr?


UShader compatibility?

Hi there.
I have used SEUS in the past, couldn't find it on Curseforge though, but by chance I stumbled upon a shader called UShader, which is supposed to look a lot like SEUS, doesn't utilize its code, though.
I read that SEUS itself was tested on this mod and is compatible, so I wonder whether that's the case for UShader as well (as in is it compatible).
I have no clue about shaders themselves as I just create modpacks. I would love to have one like that in mine, though.
I will probably just right away go and see if it crashes, lol but if it does work well, maybe you can add it to the list of working shaders, or the sort.
https://www.curseforge.com/minecraft/customization/ushader

Seems there are issues. Posting my latest.log (ignore the crash at the end, my game was dorking around)
latest.log

With version 0.2.0, there are no compile errors now, but there are still some problems with rendering. 😢
I will try to fix it.


add .copyToImmutable?

In many use cases you want to take a snapshot of some mutable data. The snapshot should be immutable, but the original data remains mutable.
Right now, that requires two steps: mutable.slice(0).transferToImmutable(). In practice I would guess that the intermediate mutable copy is quite cheap. But it may be worth checking this assumption with engines to verify this, because if the intermediate mutable copy is actually expensive, it could be worth adding another method to combine these steps into one.

FWIW – transferToImmutable() is included in @erights' slides in the Open Questions section.

sliceToImmutable(start?: number, end?: number) :ArrayBuffer

Ah, nice, sorry I missed that. I'll leave this open as a place to track for now.

In addition to @bakkot 's argument, an additional reason to add this is that there's otherwise(*) no way to make a zero-copy immutable slice of an immutable arrayBuffer. Without sliceToImmutable, the code (similar to @bakkot 's example) would be immutable.slice(s,e).transferToImmutable(), which would have a hard time avoiding an intermediate mutable copy.
(*) Under the normal implementation assumption that implementations do not attempt heroics like a copy-on-write implementation.
I currently favor adding this operation. If tc39 agrees, I close with that decision.

I currently favor adding this operation. If tc39 agrees, I close with that decision.

At the December tc39 plenary, tc39 did agree. However, I'll leave this issue open until the spec text in this repo is revised accordingly.


ci: merge staging to master

This is an automatic PR generated by the pipeline CI/CD. This will be automatically fast-forward merged if successful.

Pipeline Attempt on 888750329 for f07c8f89ac55fb085e805fb68b9e634c7f82de6c
https://gitlab.com/MatrixAI/open-source/js-async-init/-/pipelines/888750329

Pipeline Succeeded on 888750329 for f07c8f89ac55fb085e805fb68b9e634c7f82de6c
https://gitlab.com/MatrixAI/open-source/js-async-init/-/pipelines/888750329


App freezes on WiFi disconnect

wallpanel actually freezes/crashes on my 2 tablets since a recent update whenever wifi connection is lost. I can easily reproduce it, unplug or reboot my router, and usually both tablets will, after a minute or so,  show android's "app not responding" and they dont recover.  They are very different tablets (one is android 9 I think, the other 10).
It started happening when I upgraded a week or so ago to the latest version which supports having wallpanel act as a home screen. Enabling or disabling that doesnt seem to make a difference.
Originally posted by @R5fan in https://github.com/thanksmister/wallpanel-android/issues/212#issuecomment-821995167

@R5fan you must provide your app version, saying you have the "latest" doesn't mean what you think because we have different versions depending on where you installed the app from, github, google, amazon.

Not reproducible in version https://github.com/thanksmister/wallpanel-android/releases/tag/v<IP_ADDRESS>

I also have this issue on v0.9.4 build 2 from Google Play Store and on v<IP_ADDRESS> installed manually from the .apk in the releases section. I'm using Lineage OS 18.1 (Android 11) on a Nexus 7 (2013). This tablet has a known issue where wifi sporadically disconnects and reconnects. This causes Home Assistant to show "Connection lost, reconnecting..." for about a minute before Wallpanel freezes, with Android asking me if I would like to wait or close the application. After some time eventually the app closes back to the home screen. I have had this happening over the last week and as such Wallpanel has been unusable. I'm happy to provide logs, etc if possible to help fix this issue.

@squaredcircle I don't have a way to test Lineage OS and reproduce the issue.  You are in uncharted territory without much support.  Maybe if you provide your device model I can check Firebase for crashes related to that device.   A couple of possible tests, try using a page that is not Lovelace, maybe its crashing the web site.  Try searching for an app that keeps your device connection active.

@thanksmister I'm using a Nexus 7 (2013). I tried setting my page to the Australian News Corporation News 24 webpage playing the live video. When the tablet wifi went down, the video stopped. Soonafter the app crashed with "WallPanel isn't responding". Unfortunately I cannot use an app to keep my connection alive as this is a common unfixable issue with the tablet (https://issuetracker.google.com/issues/36958851). Is there anything else I can try?

I think a valid test would be using a webpage that is basic, either Tileboard for your Home Assistant page or just Google page. My theory is that the video is what is causing issues, which means the webpage is what is the cause of the crash or slowdown.  In Android, to display web pages, you are completely reliant on the WebView component, which is what renders pages, this component varies from system to system.  There are ways to update this to have better rendering, but I do not know if you can do that on your OS.

Just tried with http://www.google.com, and saw the same issue after a few minutes when the tablet disconnected from wifi.

OK, I will do some more testing today to see if we can address this.

I can confirm the same issue on 2 different devices, 1 tablet and 1 phone, the app freezes on both upon wifi re-connection. Very reproducible. Both running <IP_ADDRESS>. Both devices running different versions of Android i can provide more details if its any help.

I could not reproduce this issue with home assistant and network disconnect, both from the device and restarting the server.  What I have added is a way to detect network disconnect from the app and then refresh the web page when connected.  If HA restarts, I suggest adding a startup script to send refresh to the app from HA when the servers starts to refresh the websocket connection.
If your app is freezing because the connectivity to the automation platform is disconnected, it's possibly the page itself causing a crash, I cannot detect this issue other than the entire app crashing.    I will continue to test connectivity issues to see if I can reproduce the same results.

I went through and tested it again, it doesn't seem to be dependent on loading home assistant as i could reproduce it with loading google.com as the web page. Same issue whether the wifi is being disconnected through android or the AP being unplugged, it crashes upon reconnection, not the actual disconnection. The 2 devices with the error are running Android 7.1.2 & 7.1.1.
I could not reproduce the issue on my main phone running android 10.

Ok I can test on Android 7 .

I released a new version that detects network connectivity issues and will reload the page if the network connects again.  I am not sure this will handle issues on Android 7 devices, but it was one issue reported by other users when the network is disconnected.    https://github.com/thanksmister/wallpanel-android/releases/tag/v<IP_ADDRESS>

Duplicate of https://github.com/thanksmister/wallpanel-android/issues/268

I went through and tested it again, it doesn't seem to be dependent on loading home assistant as i could reproduce it with loading google.com as the web page. Same issue whether the wifi is being disconnected through android or the AP being unplugged, it crashes upon reconnection, not the actual disconnection. The 2 devices with the error are running Android 7.1.2 & 7.1.1.
I could not reproduce the issue on my main phone running android 10.

Can you maybe try turning off hardware acceleration on your Android 7 devices.   There is a bug specific to this version of Android and the WebView component when using hardware acceleration.  This is just a guess, you may not have this on.

The other option is to update the WebView on those devices to see if we have some issue with rendering the page with the version you have on those devices.   WebView is a component found in Google Store and there are also versions you can download and install.

Thanks for the suggestion and for the fix.
I tested out 09.4.9 and it's only partially fixed unfortunately. The reloading the page works well, although unfortunately with Home assistant that means it will reload the home page ( not necessarily the page which was navigated to, i.e. different view ). It also seems to crash out of the app altogether if i leave it overnight. I'll look into how to update WebView on the tablet and try that out, thanks

Upgrading to webview 91.0.4472.77 (from 89.X) on the android 7.1 tablet unfortunately has not fixed the problem. Weirdly if I do the exact same test my android 10 phone running the same (latest) webview version, Wallpanel behaviors completely fine.

Did you try turning off/on hardware acceleration, this was a known bug on Android 7, it cannot have hardware acceleration on with webview.   I do not have a physical Android 7 device to test.

I did and same issue unfortunately. it seems to crash and reload the web page less though. it's also unusably slow unfortunately with a mildly complex home assistant page.

I have been able to resolve this on one of the two devices by flashing a custom android 9.0 ROM ( LineageOS 16), Although on the older Samsung Tab3 10.1, I don't believe i will be able to move to a newer version then 7.1.2.

I think we need to document for others the ongoing issues with Android 7 devices, possibly they cannot use the app on those devices.

New version with some fixes for keeping the device awake if the wake command is received.
https://github.com/thanksmister/wallpanel-android/releases/tag/v<IP_ADDRESS>


[Bug]: Issue while passing chat template of llama3.2 11b to vllm server

Your current environment

The output of `python collect_env.py`
Collecting environment information...
 Following is the command I am using
vllm serve meta-llama/Llama-3.2-11B-Vision --host <IP_ADDRESS> --port 6006 --gpu-memory-utilization 0.9 --trust-remote-code --limit-mm-per-prompt image=2 --max-model-len 8000 --max-num-seqs 16 --enforce-eager --chat-template /workspace/llm_test_dev/src/llama3.2/vllm_server/tool_chat_template_llama3.2_json.jinja
The reason to add chat template was, when I did it without it I could setup the server successfully but when I try to infer using OpenAI like client, it throws error that
openai.BadRequestError: Error code: 400 - {'object': 'error', 'message': 'As of transformers v4.44, default chat template is no longer allowed, so you must provide a chat template if the tokenizer does not define one.', 'type': 'BadRequestError', 'param': None, 'code': 400}
But even though adding chat template to the the cli commad, it is throwing error as
ValueError: The supplied chat template string (/workspace/llm_test_dev/src/llama3.2/vllm_server/tool_chat_template_llama3.2_json.jinja) appears path-like, but doesn't exist!
I have downloaded this jinja file from the vllm repo
https://github.com/vllm-project/vllm/blob/main/examples/tool_chat_template_llama3.2_json.jinja
Can anyone plase help with this? Thanks!
Before submitting a new issue...

[X] Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

OpenAI compatible client I am using as per docs
from openai import OpenAI

openai_api_key = "EMPTY"
openai_api_base = "http://X.X.X.X:12003/v1"

client = OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)

# Single-image input inference
image_url = "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg"

chat_response = client.chat.completions.create(
    model="meta-llama/Llama-3.2-11B-Vision",
    messages=[{
        "role": "user",
        "content": [
            # NOTE: The prompt formatting with the image token `<image>` is not needed
            # since the prompt will be processed automatically by the API server.
            {"type": "text", "text": "What’s in this image?"},
            {"type": "image_url", "image_url": {"url": image_url}},
        ],
    }],
)
print("Chat completion output:", chat_response.choices[0].message.content)

@sourabh-patil can you tell where it was fixed ?

@ch9hn I was doing a silly mistake. The path given for the chat-template was wrong. Secondly, I ended up using Llama-3.2-11B-Vision-instruct which does not require chat-template.
Here is the command that runs smoothly for me
vllm serve meta-llama/Llama-3.2-11B-Vision-Instruct --host X.X.X.X --port XXXX --gpu-memory-utilization 0.9 --trust-remote-code --dowload_dir llama32_11b  --limit-mm-per-prompt image=1 --max-model-len 4000 --max-num-seqs 4 --enforce-eager
Can access it using the OpenAI compatible client given above.


Incorrect Translation

https://github.com/toasterofbread/ytm-kt/blob/fd86c00815b1b07792a0684caccb8f13d4fbb360/library/src/commonMain/kotlin/dev/toastbits/ytmkt/uistrings/localised/YoutubeHomeFeed.kt#L245
The correct translation for Turkish would be "Topluluktan" or "Topluluktan Trend"

What's the exact string displayed by YouTube?


Reporting a vulnerability

Hello!
I hope you are doing well!
We are a security research team. Our tool automatically detected a vulnerability in this repository. We want to disclose it responsibly. GitHub has a feature called Private vulnerability reporting, which enables security research to privately disclose a vulnerability. Unfortunately, it is not enabled for this repository.
Can you enable it, so that we can report it?
Thanks in advance!
PS: you can read about how to enable private vulnerability reporting here: https://docs.github.com/en/code-security/security-advisories/repository-security-advisories/configuring-private-vulnerability-reporting-for-a-repository

@argusSecurityBot sorry for the delay, this repo has changed ownership. I've enabled vulnerability reporting.


Update free-courses-hi.md

Added a course for tailwind css
What does this PR do?
Add a course
For resources
Description
This is a course to learn  tailwind css in hindi.
Why is this valuable (or not)?
This is helpful in learning tailwind css for beginners.
How do we know it's really free?
Its available on youtube.
For book lists, is it a book? For course lists, is it a course? etc.
Its a youtube tutorial.
Checklist:

[x] Read our contributing guidelines.
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction).
[x] Used an informative name for this pull request.

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

Thanks, and welcome to free-programming-books!


If installing Go from source fails the next step should ask user if they still want to update symlink

https://github.com/devnw/gvm/blob/262d77c628ef49510889cf812e0bb754976d8fec/gvm#L101

This should also support a -y flag


added ipam and nf-injector packages

Added spam and nf-injector packages

changed the registry to gcr.io/jbelamaric-public so we need to ensure the images get created in this registry

Nice! Thanks. I haven't built and pushed IPAM images yet or tried out the actual IPAM injection. Will do that first change I get (probably tomorrow morning).


[wip] (PUP-10150) Interleave Ruby & Puppet stacks in exception reporting

Prior to a refactor how how PuppetStack worked we would print the Puppet
stack frames as part of printing the Ruby stack. This was desirable in
some cases and in others it's believed that just printing the Puppet
stack would be best.
This patch re-adds the interleaving of the Puppet stack with the Ruby
stack but as an explict action during exception printing vs as a side
effect of including the Puppet stack as part of the Ruby stack.
This is achieved by adding a new accessor, puppetstack to our Errors
that deal with the reading of files. When an exception of this kind is
created it saves a reference to the current PuppetStack. Exceptions that
are created from these inherit the original exception's puppetstack.
Puppet::Util::Logging.build_exception_trace (primarily builds traces as
arrays for ParseErrorWithIssues),
Puppet::Util::Logging.format_exception (formats traces for
non-ParseErrorWithIssues as strings), and their underlying usage of
Puppet::Util.pretty_backtrace have been refactored to honor the
puppetstack if configured and available on the exception in question.
It also adds a new setting :puppet_trace which will only print the
Puppet stack, without any of the Ruby stack frames for those authors
working solely on Puppet code.

CLA signed by all contributors.

This is targeted at master, I think it should be 5.5.x?

This is targeted at master, I think it should be 5.5.x?

Good catch, miss-targeted the PR. Updated.

Fixing hooks

Rebased and updated the commit message / pr body. I think this is ready to go now.

This looks sane to me, but I'm curious how you tested (besides the spec tests, which I found somewhat hard to follow in terms of what all the different test cases are actually checking).

Glen provides a reproducer manifest in the ticket. I used this with ‘bundle exec puppet apply broken.pp ’

Addressed Molly's spelling and consistency comments & reduced the test code using the helpers Josh pointed out. I also moved the tests from log_spec to logging_spec since they're all testing the log_exception function provided by logging. I also added some describe blocks and reworded some test titles to try and make them easier to follow. Let me know if there's more I should do!

(just pushed a fix to a typo in the first line of the commit message "how how" -> "of how")


docs: improve godoc on tick and every

This is always a source of confusion. Thought it would be worth to make it as clearer as possible, not sure if I got it to that point, happy to have some feedback :)

That looks great! I think that'll help to clarify

This is really apt. @caarlos0, I reworded stuff a bit and added an example: lmk what you think.

looks amazing, thanks @meowgorithm


[ZEPPELIN-1619] Load js package as a plugin visualization

What is this PR for?
Current helium plugin application api (experimental) requires create library in java class, and need to create both backend / frontend code in the package. Which is good if your plugin requires both frontend and backend code running.
However, when user just want to make new visualization which completely runs on front-end side in javascript, creating helium application in java project and taking care of backend code can be bit of overhead and barrier for javascript developers.
This PR adds capability to load pure javascript package as a visualization.
how it works

create (copy, download) 'helium package json' file into ZEPPELIN_HOME/helium directory.
The json file point visualization js package in npm repository or local file system in artifact field.
type field in the json file need to be VISUALIZATION

Here's an example (zeppelin-examples/zeppelin-example-horizontalbar/zeppelin-example-horizontalbar.json)
{
  "type" : "VISUALIZATION",
  "name" : "zeppelin_horizontalbar",
  "description" : "Horizontal Bar chart (example)",
  "artifact" : "./zeppelin-examples/zeppelin-example-horizontalbar",
  "icon" : "<i class='fa fa-bar-chart rotate90flipX'></i>"
}

Go to helium GUI menu. (e.g. http://localhost:8080/#/helium).
The menu will list all available packages.

click 'enable' in any package want to use.
Once a visualization package is enabled, HeliumVisualizationFactory will collect all enabled visualizations and create js bundle on the fly.

js bundle will be loaded on notebook and additional visualization becomes available

Programming API to create new plugin visualization.
Simply extends visualization.js and overrides some methods, such as
  /**
   * get transformation
   */
  getTransformation() {
    // override this
  };

  /**
   * Method will be invoked when data or configuration changed
   */
  render(tableData) {
    // override this
  };

  /**
   * Refresh visualization.
   */
  refresh() {
    // override this
  };

  /**
   * method will be invoked when visualization need to be destroyed.
   * Don't need to destroy this.targetEl.
   */
  destroy() {
    // override this
  };

  /**
   * return {
   *   template : angular template string or url (url should end with .html),
   *   scope : an object to bind to template scope
   * }
   */
  getSetting() {
    // override this
  };

This is exactly the same api that built-in visualization uses.
an example implementation included zeppelin-examples/zeppelin-example-horizontalbar/horizontalbar.js.
Actually all built-in visualizations are example
Packaging and publishing visualization
Each visualization will need package.json file (e.g. zeppelin-examples/zeppelin-example-horizontalbar/package.json) to be packaged.
Package can be published in npm repository or package can be deployed to the local filesystem.
zeppelin-examples/zeppelin-example-horizontalbar/ is an example package that is deployed in the local filesystem
Development mode
First, locally install and enable your development package by setting artifact field to the development directory.
Then run zeppelin-web in visualization development mode with following command
cd zeppelin-web
npm run visdev

When you have change in your local development package, just reload your notebook. Then Zeppelin will automatically rebuild / reload the package.
Any feedback would be appreciated!
What type of PR is it?
Feature
Todos

[x] - Load plugin visualization js package on runtime
[x] - Make the feature works in zeppelin Binary package
[x] - Show loading indicator while 'enable' / 'disable' package
[x] - Add document
[x] - Add license of new dependency
[x] - Development mode
[x] - Propagate error to front-end
[x] - Display multiple versions of a package.

What is the Jira issue?
https://issues.apache.org/jira/browse/ZEPPELIN-1619
How should this be tested?
Build Zeppelin with -Pexamples flag. That'll install example visualization package horizontalbar.
You'll able to select horizontalbar along with other built-in visualizations

To test npm online package install capability,  Place zeppelin-bubble.json in hour local registry (ZEPPELIN_HOME/helium) and enable it in Helium gui menu.
And then zeppelin will download package from npm repository and load.

Questions:

Does the licenses files need update? yes
Is there breaking changes for older versions? no
Does this needs documentation? yes

@Leemoonsoo I like this idea to show new menu for helium but how about creating a new module like zeppelin-helium? It would be more helpful to understand whole structure. What do you think of it?

It's ok of you to have a plan to divide them. Thanks.

Ci is green. I think this is ready. Please review this.

Awesome! LGTM!

Let me review this PR. I wil comment again :)

It's very cool feature!
Tested and It works very nice like below.
[Test result]
When I clicked Enable button for using zeppelin_horizontalbar visualization package.

When using Disable button

And when I test npm online package for using bubble chart, It works very well!

LGTM!

@Leemoonsoo Tested and it works well. It's really awesome! And 👍 for having really well described docs. Let me create my own viz application as explained in the documentation with real user's point of view. I will leave another comment after that :)

When I enable zero or only one vizualization,

I didn't no that there is reordering feature. It'll be better to show some messages in this case as well so that ppl can know about this. What do you think?
And when I tried to reorder the icons, it doesn't work left -> right. It only works right -> left like below.

Thanks for the reviews and verifications!
@AhyoungRyu Addressed all the comments and fixed drag and drop problem.
When there is 0 or 1 visualization, reorder doesn't make any sense and i think we don't need to bother user with reorder feature in this case.

@Leemoonsoo Thanks! I just suggested to have some default message like other pages (e.g. localhost:8080/#/interpreter -> there is "Manage interpreters settings. You can create / edit / remove settings. Note can bind / unbind these interpreter settings.")But it's just minor suggestion :)
I tried to create new visualization package using HighCharts as you described in documentation, I didn't face any problem and it's definitely easier to create than before 👍

@AhyoungRyu Thanks for the review. Great to see High chart working nicely.
A lot more improvements on Helium menu will be required, like search page, grouping packages by type, package list sort, etc. I'd like to address further improvements on Helium menu in separate PR.

Merge to master if no more comments!

Good job! @Leemoonsoo


docs: link to angular.io/cli instead of old wiki

The page on cli.angular.io still link to the old wiki instead of the new docs.

@alan-agius4 Done 👌


perf: how to do code split in a sunmao-ui application

What problem does this feature solve?
When we talk about web UI performance, load speed is one of the most important metrics. The basic idea of improving load speed is to do code splits which let the browser lazy load code.
The code split technical is widely used in our daily development, but in sunmao-ui, we do not have the equivalent ability yet.
lazy load component and trait
TBD
split application schema
TBD
What does the proposed API look like?
TBD

Module is one of the ways to split code. It can not only wrap components(which makes the leftTree clearer), but also prevent user using global state everywhere.

In this issue #417, we discussed using application to render module which means we could use multiple nested sunmao instance to render an appliaction.  Further more, we can use router component to render multiple pages application.


Revert changes that force curl http version to 1.0

Rsk now supports version 1.1 since release 0.4.1

Because Expect: 100-continue may cause additional delays, I don't want to undo the change. I'll change the comment in the code.

That's right, Expect: 100-continue may cause delays.
If you still want to use HTTP/1.1 you can disable the Expect behaviour by setting Expect header to an empty string (source).