random_example.py: Despite installing, "Unknown layer: PhasedLSTM"

Hi! I'm really interested in trying this out, however, following the instructions to install and then running one of the examples didn't work for me.  I got the same error on both Ubuntu 16.04 running Python 3.6, and with MacOS X High Sierra running Python 3.5:  ValueError: Unknown layer: PhasedLSTM
Any suggestions for getting this to work?
Below is a log of everything I did, this one for the Mac...
$ pip install phased_lstm_keras
Collecting phased_lstm_keras
Downloading https://files.pythonhosted.org/packages/73/07/20fe5a59c4e11a42c17763219eb5a3de7c827be7b7d9c1afa5834a4e19b1/phased_lstm_keras-1.0.2-py2.py3-none-any.whl
Requirement already satisfied: matplotlib>=2.0.0 in ./anaconda/envs/py35/lib/python3.5/site-packages (from phased_lstm_keras) (2.2.2)
Requirement already satisfied: numpy>=1.12.1 in ./anaconda/envs/py35/lib/python3.5/site-packages (from phased_lstm_keras) (1.14.0)
Requirement already satisfied: keras>=2.0.2 in ./anaconda/envs/py35/lib/python3.5/site-packages (from phased_lstm_keras) (2.1.3)
Requirement already satisfied: cycler>=0.10 in ./anaconda/envs/py35/lib/python3.5/site-packages (from matplotlib>=2.0.0->phased_lstm_keras) (0.10.0)
Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in ./anaconda/envs/py35/lib/python3.5/site-packages (from matplotlib>=2.0.0->phased_lstm_keras) (2.1.10)
Requirement already satisfied: python-dateutil>=2.1 in ./anaconda/envs/py35/lib/python3.5/site-packages (from matplotlib>=2.0.0->phased_lstm_keras) (2.6.1)
Requirement already satisfied: pytz in ./anaconda/envs/py35/lib/python3.5/site-packages (from matplotlib>=2.0.0->phased_lstm_keras) (2017.3)
Requirement already satisfied: six>=1.10 in ./anaconda/envs/py35/lib/python3.5/site-packages (from matplotlib>=2.0.0->phased_lstm_keras) (1.11.0)
Requirement already satisfied: kiwisolver>=1.0.1 in ./anaconda/envs/py35/lib/python3.5/site-packages (from matplotlib>=2.0.0->phased_lstm_keras) (1.0.1)
Requirement already satisfied: scipy>=0.14 in ./anaconda/envs/py35/lib/python3.5/site-packages (from keras>=2.0.2->phased_lstm_keras) (1.0.0)
Requirement already satisfied: pyyaml in ./anaconda/envs/py35/lib/python3.5/site-packages (from keras>=2.0.2->phased_lstm_keras) (3.12)
Requirement already satisfied: setuptools in ./anaconda/envs/py35/lib/python3.5/site-packages (from kiwisolver>=1.0.1->matplotlib>=2.0.0->phased_lstm_keras) (39.0.1)
Installing collected packages: phased-lstm-keras
Successfully installed phased-lstm-keras-1.0.2
$ git clone https://github.com/fferroni/PhasedLSTM-Keras.git
Cloning into 'PhasedLSTM-Keras'...
remote: Counting objects: 101, done.
remote: Total 101 (delta 0), reused 0 (delta 0), pack-reused 101
Receiving objects: 100% (101/101), 363.37 KiB | 2.04 MiB/s, done.
Resolving deltas: 100% (40/40), done.
$ cd PhasedLSTM-Keras/examples/
$ python random_example.py
/Users/shawley/anaconda/envs/py35/lib/python3.5/site-packages/h5py/init.py:34: FutureWarning: Conversion of the second argument of issubdtype from float to np.floating is deprecated. In future, it will be treated as np.float64 == np.dtype(float).type.
from ._conv import register_converters as _register_converters
Using TensorFlow backend.
/Users/shawley/anaconda/envs/py35/lib/python3.5/importlib/_bootstrap.py:222: RuntimeWarning: compiletime version 3.6 of module 'tensorflow.python.framework.fast_tensor_util' does not match runtime version 3.5
return f(*args, **kwds)
2018-04-22 12:51:22.827292: I tensorflow/core/platform/cpu_feature_guard.cc:137] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.2 AVX AVX2 FMA

Layer (type)                 Output Shape              Param #
lstm_1 (LSTM)                (None, 10)                520
Total params: 520
Trainable params: 520
Non-trainable params: 0

Traceback (most recent call last):
File "random_example.py", line 31, in
main()
File "random_example.py", line 23, in main
model_plstm = load_model('model_plstm.h5')
File "/Users/shawley/anaconda/envs/py35/lib/python3.5/site-packages/keras/models.py", line 243, in load_model
model = model_from_config(model_config, custom_objects=custom_objects)
File "/Users/shawley/anaconda/envs/py35/lib/python3.5/site-packages/keras/models.py", line 317, in model_from_config
return layer_module.deserialize(config, custom_objects=custom_objects)
File "/Users/shawley/anaconda/envs/py35/lib/python3.5/site-packages/keras/layers/init.py", line 55, in deserialize
printable_module_name='layer')
File "/Users/shawley/anaconda/envs/py35/lib/python3.5/site-packages/keras/utils/generic_utils.py", line 143, in deserialize_keras_object
list(custom_objects.items())))
File "/Users/shawley/anaconda/envs/py35/lib/python3.5/site-packages/keras/models.py", line 1352, in from_config
layer = layer_module.deserialize(conf, custom_objects=custom_objects)
File "/Users/shawley/anaconda/envs/py35/lib/python3.5/site-packages/keras/layers/init.py", line 55, in deserialize
printable_module_name='layer')
File "/Users/shawley/anaconda/envs/py35/lib/python3.5/site-packages/keras/utils/generic_utils.py", line 137, in deserialize_keras_object
': ' + class_name)
ValueError: Unknown layer: PhasedLSTM
$ which python
/Users/shawley/anaconda/envs/py35/bin/python
(py35) Scotts-MacBook-Pro-3:examples shawley$ python --version
Python 3.5.3

Same problem here on Ubuntu 16.04 Python 3.6.3

The problem is you need to define custom_objects for your custom layers PhasedLSTM when you load the model.
Usually the following line should work out of box since the custom objects have been defined in PhasedLSTM.py
model_plstm = load_model('model_plstm.h5', custom_objects={"PhasedLSTM", PhasedLSTM} )

However, it doesn't. And I just downgraded to Keras 2.1.5 to bypass the first Keras/tensorflow bug and changed the code as follows, this should work.
from keras.utils import CustomObjectScope

with CustomObjectScope({'PhasedLSTM': PhasedLSTM}):
        model_plstm = load_model('model_plstm.h5')

@nicolefinnie answer this correctly. thanks.


Game can't run when Razer Cortex is running.

When I launch the game with Cortex running and d3d9.dll in bin64, I get an error message and a crash. Remove the d3d9.dll, gw2 runs normally.
When I exit Cortex, the game works fine with d3d9.dll in the folder.
I have gone through and made sure Cortex wasn't optimizing anything and the game still has has the error and the crash. So I guess its something to do with the base Cortex program.
https://user-images.githubusercontent.com/63219843/102679049-936ad600-417a-11eb-8e1c-b5d99ddddb44.mp4

This issue seems came back after a while.
Any solution?

Uninstall Razer cortex, it does weird things with all programs named d3d9.dll, so this will always happen.

This may work with the Addon Loader, which is the preferred way to load GW2Radial now. You can set it up using the Addon Manager, though you'll need to manually insert the new version while it's still in alpha.
If it doesn't work with that either, I'm afraid there's nothing I can do.


Feature request: including filenames in dask bags

Is it possible to introduce file names that are read using dask.bag.read_text?
My use case is that I read json files into a dask bag, but every now and then the underlying json contains an error/inconsistent format, so my pipeline breaks. Knowing the filenames would make it somewhat more convenient in locating these files.
I think it's only of minor importance, and I'm not even sure how this could be implemented (it's more straightforward for dataframes: https://github.com/dask/dask/issues/2802)... maybe for text files a line appended/prepended or for json files a key appended.

Closed by #5836


Error executing command

Hi,
I recently updated jasmine-rails to 0.14.1 and phantomjs to 2.1.1. Although, when I run rake spec:javascript  I get this error:
± tc |master ✗| → rake spec:javascript --trace
** Invoke spec:javascript (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute spec:javascript
Running "/home/gandalf/.phantomjs/2.1.1/x86_64-linux/bin/phantomjs" ""<EMAIL_ADDRESS>"file:///home/gandalf/workspace/gemini/tmp/jasmine/runner.html?spec="
Running: file:///home/gandalf/workspace/gemini/tmp/jasmine/runner.html?spec=
rake aborted!
Error executing command: "/home/gandalf/.phantomjs/2.1.1/x86_64-linux/bin/phantomjs" ""<EMAIL_ADDRESS>"file:///home/gandalf/workspace/gemini/tmp/jasmine/runner.html?spec="
/home/gandalf/.rvm/gems/ruby-2.3.1@gemini/gems/jasmine-rails-0.14.1/lib/jasmine_rails/runner.rb:77:in run_cmd' /home/gandalf/.rvm/gems/ruby-2.3.1@gemini/gems/jasmine-rails-0.14.1/lib/jasmine_rails/runner.rb:23:in block in run'
/home/gandalf/.rvm/gems/ruby-2.3.1@gemini/gems/jasmine-rails-0.14.1/lib/jasmine_rails/runner.rb:48:in override_rails_config' /home/gandalf/.rvm/gems/ruby-2.3.1@gemini/gems/jasmine-rails-0.14.1/lib/jasmine_rails/runner.rb:9:in run'
/home/gandalf/.rvm/gems/ruby-2.3.1@gemini/gems/jasmine-rails-0.14.1/lib/tasks/jasmine-rails_tasks.rake:9:in block (2 levels) in <top (required)>' /home/gandalf/.rvm/gems/ruby-2.3.1@gemini/bin/ruby_executable_hooks:15:in eval'
/home/gandalf/.rvm/gems/ruby-2.3.1@gemini/bin/ruby_executable_hooks:15:in `'
Tasks: TOP => spec:javascript
(See full trace by running task with --trace)
Is there any way to get more debug information through jasmine-rails?

Personally, I would open up the gem and drop pry or a debugger to figure out what might be going on. My familiarity with the code is about as good at yours at this point, since it's been so long since I've worked on/with it

@taleschaves Did you end up making any headway on this? I have the same issue, though not after an upgade; I can run specs fine in the browser but not from the command line and have essentially the same error.


showLessText displays wrong label

Hey, so while writing a few tests for your plugin (I'll send a PR soon :D). The following code results in the wrong label being displayed:
ShowMoreText(
                "Visible - This is the full text.",
                maxLength: 7,
                shouldShowLessText: true,
                showMoreText: 'Mehr anzeigen',
                showLessText: 'Weniger anzeigen',
              ),
            ),

Plugin version: flutter_show_more: ^0.1.2
Flutter doctor output: (flutter doctor -v)
[✓] Flutter (Channel stable, v1.12.13+hotfix.8, on Mac OS X 10.15.2 19C57, locale en-DE)
    • Flutter version 1.12.13+hotfix.8 at /Users/lunaticcoding/Developer/flutter
    • Framework revision 0b8abb4724 (6 weeks ago), 2020-02-11 11:44:36 -0800
    • Engine revision e1e6ced81d
    • Dart version 2.7.0

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.0-rc1)
    • Android SDK at /Users/lunaticcoding/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 30.0.0-rc1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.3, Build version 11C29
    • CocoaPods version 1.8.4

[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 44.0.2
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)

[✓] IntelliJ IDEA Community Edition (version 2019.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 43.0.3
    • Dart plugin version 193.6015.53

[✓] Connected device (1 available)
    • iPhone 11 Pro Max • 3524ECAF-3465-402B-9EAD-81E2837421B4 • ios • com.apple.CoreSimulator.SimRuntime.iOS-13-3 (simulator)

I just saw that there is an open PR which fixes this bug. Feel free to just close the issue after the merge :).

@lunaticcoding there  is bug in line # 62 of plugin
before:
               text: widget.showMoreText ?? 'less',
After:
               text: widget.showLessText ?? 'less',


Added InternalBlockExecutionError to execute.rs exports

It's not possible to create custom/arbitrary errors rn in custom clients using BlockExecutionError because this enum is not exported.

fixes #11526


Revert changes made in GH-359

Reticketed from #377
This reverts commit 9b7595e16d7ad09bd2a71bbc33937c2512529af4, reversing
changes made to e4ff4954b2f8fa04fae7086dec3a62883a23cd7a.

Thanks so much @tas50 :)

Thanks so much @tas50 :)


[#6018] Move Dotnet generators from Samples to "generators" - VSIX - Echo Bot

Addresses #6018
#minor
Description
This PR adds the VSIX project and the Echo bot from the BotBuider-Samples repository.
It also includes the root documentation for the vsix-vs-win folder.
Detailed Changes

Added HOW_TO_VERSION, LICENSE, and README docs.
Added generators/vsix-vs-win/BotBuilderVSIX-V4/BotBuilderTemplatesVSIX project.
Added generators/vsix-vs-win/BotBuilderVSIX-V4/UncompressedProjectTemplates/EchoBot project.
Fixed some StyeCop issues in the code.

Testing
These images show the extension being installed and the bot working as expected.

/azp run BotBuilder-DotNet-CI-PR-(MacLinux)-yaml


Whether to specify all version number in Dockerfile?

Consulted @ttimbers that we should specify the version number of all packages in Dockerfile/environment.yml
For doing this, we can run the container -> conda list to list the packages and version number in the container -> copy and edit our Dockerfile/environment.yml -> rebuild Docker image

Yes, that sounds like a great plan!

Updated! Package versions have been added to Dockerfile and environment.yaml, and its on main branch now!


[IOS] Loading forever when select image limit access

I encountered 2 problems when selecting photos in the case of granting permission to select photos on iOS as limit access.

problem 1: with library versions 1.1.2. When I grant limit access permission and then select the list of images allowed to access, this screen will be opened indefinitely without being allowed to switch to another screen (same issue same issue https://github.com/baronha/react-native-multiple-image-picker/issues/123)
problem 2: Because of problem 1, I decided to use a lower version of the library <= 1.1.0 and I don't have problem 1 anymore. But I encountered another problem: in screen A selecting image from the list of images that have been granted limited access rights, I selected image X, then I clicked on the image button (next to the done button) to go to screen B select the limit access image list again and remove access to image X, then return to screen A and click done which will result in loading forever

@baronha

Check new version: 2.0
Docs: https://baronha.github.io/react-native-multiple-image-picker/


Set keyboard focus on console when opened

Description
This adds a setFocus call when showing the console, giving keyboard focus to the console and allowing immediate user input.
See discussion in https://github.com/napari/napari-console/pull/23 for more on the changes to the GitHub Actions workflows and test fixture. I'll leave some review comments with my thoughts on these changes - feedback is appreciated!
Type of change

[x] New feature (non-breaking change which adds functionality)

References
Closes #5166
Requires https://github.com/napari/napari-console/pull/23 to work (but harmless without it)
How has this been tested?

[x] all tests pass with my change
[x] added a test (requires popup/window manager)
[x] tested manually with and without https://github.com/napari/napari-console/pull/23 to test backward-compatibility

Final checklist:

[x] My PR is the minimum possible work for the desired functionality
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have added tests that prove my fix is effective or that my feature works

This PR is life-altering!
As a total fan of the napari-console (yes, i've come a long way), I have to say this is an incredible QoL improvement.
😍
I can confirm it works as advertised and that if it install the napari-console PR branch but not this one everything works fine.

In the context of code it looks ok, but my main problem is adding herbstluftwm and how it could impact the test suite. I need to read a little more about this.

This PR also partially addresses https://github.com/napari/napari/issues/4776

this need to be merged after the release of the new napari-console.

I finally find some additional time. The napari-console is released. Does this PR require some update?

I will rebase and test again locally at least to make sure.

I rebased and tests all pass. I also tested manually with napari-console==0.0.7 and the behavior feels correct.
The failure in Build PR Docs is unrelated I think - looks like all PRs are failing that check at the moment due to a change in the docs repo.

The failure in Build PR Docs is unrelated I think - looks like all PRs are failing that check at the moment due to a change in the docs repo.

I have merged fix in main.

@kephale this change requires napari-console==0.0.7 for the behavior to take effect - can you check that you have the correct version?

hm you got it, i was on 0.0.6 but the upgrade didnt fix it. Ill try on a fresh env

@Czaki did you want to review this again or is @kephale good to go ahead and merge?

It is still good for me, but I'm not allowed to press the big green button on this repo

I don't get all the workflow stuff, but this seems ready to merge?
Please? 🙏
@Czaki any final thoughts?

@Czaki any final thoughts?

I have opened #5476 so there is no need to keep this non merged.

Oh no it looks like PR Test / ubuntu-latest 3.8 pyside2 (pull_request) has hung - is this a known/intermittent problem or likely something with my PR?

It hangs on qtdims tests that are known to have problems.


Compiling error will not stop NPM scripts running

If I have a faulty twig file, the command still gives me Wrote foo.html.twig with undefined text inside it. I would expect it to thrown npm ERR! that will stop all the further scripts from running.

Hi,
Although there is a tag, this library never reached stable and is not maintained anymore.
Bests,
Mark


Added withInnerName to set the names of the inner XML tags for lists

See also this thread.
This PR is about changing the inner node names of XML for lists.

May I know when will this PR be merged? This feature is very useful as it doesn't name the vector with value0, value1, value2 ...


Use json.marshal instead of proto.marshal when calculating sha of config sections

Use json.marshal instead of proto.marshal when calculating sha of config sections

This allows maps to be used in the proto buf data structures.

Cleaned up logging in parseconfig and a couple of other files to not to overwhelm with non-useful debugs.

Moved most config processing to be done only if rebootFlag is not set

Moved the flag checking from individual sectional routines into parseConfig itself

Hi Erik - I removed calls that were getting printed periodically and were not adding any value. These statements were not adding any value - from the code, it is very clear what was happening.. And printing these was making the debugs very noisy.. hence cleaned them up..


Prettier singularity

[ ] The singularity itself should be a shader
[ ] It should have a "pull" effect that attracts the closest object and makes them orbit around itself before eating it, instead of simply deleting stuff.
[ ] It should have a "warping" effect like pic related

The "warping" effect could match this on a smaller scale to better resemble a black hole

Orbit effect pending, I think the straight pull looks fine for now


New org: Center for Emerging Risk Research

https://emergingrisk.ch/team/

Uploaded. Check https://github.com/riceissa/aiwatch/commit/78d426425ba97402b2414748df8d3081d2f32985


Rollups: Prevent duplicate batches running

Critical Changes
Changes

Before a batch kicks off, it checks to see if there are other instances of itself still in process, and only proceeds if it finds none.
If a job is skipped because the previous day's job is still running, an Error is logged with an explanatory message.

Issues Closed
New Metadata
Deleted Metadata

@bethbrains Did you mean to merge this?

No. Crap. Wanted to get your final approval on the last commit.

Might be a bit challenging to revert, but I'm also not fully comfortable releasing this without more testing and approval. If it's possible to revert the merge and re-open this that would be the preferred solution.

Reverted. I'll open a new PR.


dist_bar not working for groupby integer value

For distribution bar chart, if series is an integer column, y axis seems to be shrunken:

Notice: this issue has been closed because it has been inactive for 404 days. Feel free to comment and request for this issue to be reopened.


JSONPath issue with underscore in JSON key

Hello Sriram
I have discovered a very strange behavior.
I use this JSON:
[ { "id": "647", "address": { "locality": "Bonn", "postal_code": "56867", "street_name": "Bergstrasse", "street_number": 5 }, "something": null, "something_else": null }, { "id": "648", "address": { "locality": "Bonn", "postal_code": "56867", "street_name": "Beethovenstrasse", "street_number": 37 }, "something": null, "something_else": null }, { "id": "649", "address": { "locality": "Köln", "postal_code": "56854", "street_name": "Hauptstrasse", "street_number": 12 }, "something": null, "something_else": null } ]
JSON Path: $..*[?(@property === "street_name" && @.match(/Bergstrasse$/i))]^.street_number
Result: 5
This works like expected
https://jsonpath-plus.github.io/JSONPath/demo/

If I copy this example JSON to the Grafana Explore Infinity / Inline / Data field it works also like expected.
But if I load this JSON from a URL I get this ERROR:
jsonPath: Cannot read properties of null (reading 'match'): _$_property === "street_name" && _$_v.match(/Bergstrasse$/i)
If I change "street_name" to "streetname" in my JSON File and use this JSONPath $..*[?(@property === "streetname" && @.match(/Bergstrasse$/i))]^.street_number than it works like expected.
So I assume the Implementation has a issue with the underscore _ in a JSON Key field.
Is there any way to escape the unserscore in the JSONPath?
Or any other workaround?
Grafana Version: v8.3.3
Infinity Version: v0.8.0
Thanks in advance
Manfred

Hello Sriram
Sorry to disturbing you.
The reason of my problem was not the underscore in "street_name".
The problem is I have a very long JSON file and some keys "street_name" have an empty value. ( "street_name": null, )
I have add some value to the empty "street_name" and now it works like expected.
It would be great if you have an example to solve the problem with empty null value circumstance.
Have a nice day
Manfred

Maybe it is useful for other people. This JSONPath is working in my case.
$.*.address[?(@property  === 'street_name' && @ !== null && @.match(/$street/))]^
I have configured street as a dashboard variable.


[Feature] Add more tags

Hello @medyo
Congrats for the great work
I suggest adding more tags like AWS, DevOps, TDD ... so we can monitor everything in the same place

Actually, we only serve languages (Javascript, Python) and topics (Android, DevOps...) to keep an easy UX.
by adding AWS and TDD or relative fields, developers will get confused.
eg: AWS belongs to the DevOps, so there is no need to go deeper.

Thanks for responding to this I explicitly said AWS and DevOps to let you choose the level of the dept you want and maybe if you don't want to include them in feeds let's create a new section under the 4 columns so we can  found other general propose tags as articles for example

Hi Can you add some more tags related to Java

@rohitvetri91 like what exactly?

Would be nice to find shell, bash aka cli around in the language specification.
Also because extension says:
Github Trending does not support Devops.

Only a suggestion.
🍨


Domain-dependent color scales for Cases and Deaths

User story
In v1.7, Case/Death Counts use a log color scale, Cases/Death Ratios per 100k use a linear color scale.  Our users are used to this (e.g. #434) but it doesn't make sense.   @RoniRos suggests to find a more principled solution that also incorporates some domain-dependent (not just data-dependent) notion of what it means for some value to be ‘high’ or ‘low’, and volunteered to lead this initiative.

Closing this because I think this is a long gone issue at this point. If I'm wrong, then somebody can tell me and we can reopen it.


Build test mode and test bed for major scripts

Testing even moderately complicated MMM scripts sucks, because the edge cases for specific rolls are impossible to force. Not testing at least moderately complicated MMM scripts sucks, too, because ... well, bugs. So, what to do?
It may just be possible to build a simple test suite by

inserting logic into each script that accepts special input from a set of special variables to take precedence over die rolls (or even user input)
build config scripts (one test script per actual script) to run through various test cases and overload those variables for testing.

How about Roll20 user input? If those Roll20 calls for input boxes or dropdowns remain in the code, Roll20 will execute one set of input controls before even calling MMM -- something I could live with if the values were properly overwritten by those supplied by the test environment...hmmm.
Roll20 can nicely simulate die rolls: [[20]] should create a critical success, for example. Not one that iscritical()/isfumble() would recognize, though. For those cases, we could use a loooong for loop to roll "real" dice until the right result pops up.

So overloading various kinds of inputs is possible using config scripts (one per test case), and minimal changes to every main script.
Die rolls may be an issue if we want to reliably test key edge cases, such as critical failures and successes. Maybe solvable somehow.
More importantly, however, I am making zero headway on how to check if the results of a script are actually those we expect, particularly in terms of output to the chat (I guess we could write little scripts to check if the changes made to my LP/AP are those we expect, so that's the smaller part of the problem). The relevant test cases and the number of scripts are already too many for us to just inspect the results and output manually -- the risk of something getting overlooked is as high as with manual testing. Yet there is no native way from within MMM to capture chat output and compare it to something (regexp).
One incomplete way out might be this: If we leave pretty optics and the testing of pure output issues aside (not an inconsiderable drawback), we could rework the scripts (not an inconsiderable effort) such that the key results (with these inputs, the script calculated these outputs) can be stored somewhere if "test mode" is on, e.g. in a character sheet. We could then build a test battery that runs all the test cases and then checks the storage sheet for the correct results. That would at least allow us to test for internal logic problems across a range of input conditions, including problems from sudden internal changes on Roll20's part.
But is this worth the effort? Looks like a LOT of work in terms of writing all the test cases manually, since there is no reusable code through functions etc., and building this additional functionality into the scripts, and STILL having to make sure manually that the output is correctly displayed every time we make a change that has anything to do with output.

This is an intriguing train of thought.
I've been on and off thinking about native MMM features that would help testability, but (obviously) to no practical effect so far.
So. What do we want to test?

Script logic, especially edge cases.

Roll20 interaction (with under-the-hood API behavior and with state managed by Roll20, e.g. character sheets or token state).

What do we want to guard against?

Home-baked script bugs
MMM behavior changes and bugs
Roll20 behavior changes and bugs

The good news is that we don't have to find a single approach that does all of these three things simultaneously.
For the first two (script bugs and MMM bugs) we could use a test harness of our own making. Notice how MMM's own test suite simply runs in any modern web browser of your choice – open test/scripts.html or test/expressions.html in your default browser and see. These tests run with the same MychsMacroMagic.js that runs in the Roll20 sandbox, against a (very crudely made and incomplete) mock-up of the Roll20 API (which, after all, is pure JavaScript as well).
For the third, we wouldn't have to test every edge case of every script at all. We know the touch points with Roll20 that can break our scripts: They're not that many, and it seems a small number of generalized test cases should be able to cover them (e.g. roll queries, nested roll queries, target selection, etc.). These test cases could probably be written as an MMM script that we'd just have to run once at the beginning of each game session to make sure Roll20 is still exactly as broken as we've come to expect it to be.

Well, MMM-native support would indeed make automated testing a LOT easier/more feasible :-)


Replace axios with fetch api

pls review @niravzi

Changes from this PR already exist in https://github.com/kpi-ua/schedule.kpi.ua/pull/237


Update README.md

Updated the README according to the projects in this repository.

Updated the README according to the projects in this repository.

Updated the README according to the projects in this repository.

Please check

@prabhleenn  Its not updated fully yet if you could go and check all the projects and include them in the readme that would be helpful


pyart-gridding notebook overview

In the Py-ART gridding notebook, the fourth Overview item reads:
4. Gridding multiple radars to the same grid

However, the notebook only works with a single radar file. It would be useful to include a use case where multiple radars are used.
Should we either remove item (4) and create a separate notebook which uses multiple radars, or just add a section to the existing notebook?

@mgrover1 any thoughts on this? We are working through prioritization of open issues and unsure about this one.

I can add a section here on that! Should be a pretty quick thing to add.

Thanks for assigning me here @ktyle

@mgrover1 just reawakening this thread ... let me know if this is something you could do without too much effort 😀


feat(aspect-ratio-box): add aspect-ratio-box utility component

Description
Add AspectRatioBox component, which allows you to create a container with a given aspect ratio. Useful for wrapping images with known aspect ratios from causing reflows as images load, or building UIs with using squares of unknown width.
Scope

[ ] Patch: Bug Fix
[x] Minor: New Feature
[ ] Major: Breaking Change

On second thought, maybe this would be better suited to follow the Card pattern, where the StyledBody is just used outright, rather than passed in as an override. Let me try this again.

Nevermind, it seems that the Card component documentation is misleading! All the Card examples follow a pattern with styled components as children, but which end up with a redundant StyledBody in the DOM!
Implemented AspectRatioBox using Blocks instead in #1414, to take advantage of Block’s styling props and simplify usage. Maybe will send another PR at some point updating the Card component documentation to reduce redundancy..


firefox refuse remember settings

As i get in settings and mark to use unicode in clipboard, after restarting firefox, this setting gets back to : joy : marking. Kinda annoying.
Firefox version 41.0.1 on Windows 7 64bit.

Most Firefox problems are related to broken profiles, please try creating a new profile and test if it works correctly. If that's the case, there's not much we can do here.

i don't know how, but problem vanished away itself. (its not like i forgot to restart firefox or anything, its just got fixed somehow).

Yup, Firefox is unfortunately pretty often experiencing these phantom-UI problems :ghost:
Thanks for reporting though :white_check_mark:


[Feature Request] Batch Mark Selected Improvements

Describe the solution you'd like
Desktop

Once you have one selected, just mark the whole "cover" area as "add to selection".

Mobile

Start the selection by long-pressing a cover and then every other cover press adds to selection

Describe a small use-case for this feature request
Desktop
For batch selection this would make it lots of easier. It's obvious that once there's one selection that when a user clicks on a second cover they don't want to start reading or mark progress, they just want to add to the already existing selection.
Mobile
The only way currently to select a cover here is by some workarounds, there's no "hover" effect you have on a mobile really so long-press would take care of this.
Additional context
An image to visualize what I mean by "whole cover area". Basically everything I've put lines on should work as an "add to selection" since once you've one selected it's obvious you want to continue to select more.

Hey sorry for the long delay! In v0.17.1, the whole cover image is clickable once you've made a selection. This should improve the UX a bit.
For the long-press, I think it would be better to keep the current state because the different behavior on mobile would break the user expectation. I do have plans for official mobile apps, and I think I will use the long-press there. Anyway, thanks a lot for the request!


[Fail] Running Carla in AWS

Hello !
I'm trying to use the tutorial to carla_headless in the latest (0.9.3) in AWS machine, but everytime I get stucked in sudo nohup Xorg :7 &  it says that the command Xorg doens't exist ! Could anyone help me ?
PS.: Does anyone has a AMI ready for CARLA to use in AWS Machines ?
Last lines of log:

Full Log
Originally posted by @wendersonj in https://github.com/carla-simulator/carla/issues/917#issuecomment-463131166

Yet I can connect to the EC2 with my machine, I was able to remote connect to a server with Carla.
My mistake was that i used port 2001 instead of 2000.
Cheers !

Just an update... I tried to connect to EC2 in a different network other than my University like my own... And I succeeded using port 2000. So, I'm closing this issue.
Ps.: With manual_control.py, the graphics update from movements in Carla's client it's very slow !
Cheers !

Hello, @wendersonj .
I'm trying to following the "Running CARLA without Display and Selecting GPUs" (0.9.3)
Could you share your environment what you set up on you AWS EC2 instance?
Which version you used for this?
(instance type, graphic driver version)
#2102

Hello, @wendersonj .
I'm trying to following the "Running CARLA without Display and Selecting GPUs" (0.9.3)
Could you share your environment what you set up on you AWS EC2 instance?
Which version you used for this?
(instance type, graphic driver version)
#2102

Hi @harderthan. Later today I will respond you properly.

@wendersonj, Sorry for hurry.
Is there any update?

Hi! Sorry about the late.
Unfortunately I don't have the machine anymore, but the machine configuration was a machine with dedicated graphic card appropriately to run Carla. I had to install a lot of dependencies, but the one the I had most problems was some dependency related to graphic. I don't remeber properly, but I think it was Xorg, as I said in a previously post. Remember to verify your ports before connecting.
Sorry not being more helpful, but if you need anything else, please reach out.
Cheers.


Problem with convert date after upgrade to 2.1

Hello, I've recently upgraded ecto from 2.0 to 2.1 and I have this error during convert DateTime to iso format:
** (FunctionClauseError) no function clause matching in Ecto.DateTime.to_iso8601/1      stacktrace:        (ecto) lib/ecto/date_time.ex:584: Ecto.DateTime.to_iso8601(~N[2017-01-09 17:11:31.208162])        test/unit_tests/esioci_router_test.exs:91: (test)
~N[2017-01-09 17:11:31.208162] comes from insert! function.
With 2.0 version everything was fine.
Environment

Elixir version (elixir -v): elixir 1.3.3
Database and version (PostgreSQL 9.4, MongoDB 3.2, etc.): PostgreSQL 9.5.2-1.pgdg80+1
Ecto version (mix deps): 2.1.2
Database adapter and version (mix deps): postgrex 0.13.0
Operating system: Ubuntu 16.10 x86_64

Ecto 2.1 uses NaiveDateTime, so please try NaiveDateTime.to_iso8601/1 which was introduced in elixir 1.3 or 1.4 (you might need to upgrade).

Did you change the schema types? Ecto.DateTime struct corresponds to the custom ecto schema type Ecto.DateTime, NaiveDateTime struct, that you have there corresponds to the schema type :naive_datetime. In 2.0 only the former existed, 2.1 introduced the new types to take advantage of the built-in calendar structs introduced in Elixir 1.3.

Ecto 2.1 defaults to :naive_datetime, so you can easily fix by adding timestamps type: Ecto.DateTime to the relevant schema. This way Ecto will emit the old types and everything should work as before. We do recommend eventually migrating to the new types though. Such has been noted in the changelog.

Thanks for response, I've changed Ecto.DateTime to NaiveDateTime and works on Elixir 1.3.3.


Provide individual crate readme files

Up to now we've just provided a single readme shared by all crates. This has proven to be a simple and manageable approach but has also caused quite a bit of confusion for developers poking around the repo directly. In this update I've simply copied the readme into each individual library crate so they can evolve separately and removed most of the content from the repo's readme which can now also focus more on supporting developers visiting the repo itself. Hopefully this helps to avoid some of the confusion.
Fixes #2644 #2110 #1940 #780 #651 etc.
@tim-weis @ChrisDenton @riverar for suggestions.

I can't post comments on the files directly, seems GitHub is slightly broken right now.
Was just going to suggest maybe adding comments <!-- ... ---> in tricky areas to help folks / discourage PRs. It shouldn't get rendered on crates.io/GitHub/etc.

@kennykerr Looks fine to me, we can adjust per feedback if any further PRs mistakenly come in.


Move js techs to separate package

[x] js
[ ] js-expand-includes
[ ] js-i18n
[ ] js-includes
[ ] js-test

Techs has been removed in #368. You should use the enb-js package instead.


Architecture docs for CLI and new API

Docs oriented towards ramping up devs looking to contribute.

Fixed in https://github.com/istio/operator/pull/64


Added additional null-checks to avoid client-side NPE's

Added additional null-checks to avoid client-side NPE's in some edge cases involving (at least) Mekanism machines/blocks being placed right next to a TileEntity Tunnel.
Fixes #402
Took the exact same approach as #391

Thanks!

Np! Had this issue while starting the server. Caused us to not be able to start it at all. After some googling I found a similar issue which I mentioned before and that worked like a charm. We're now running a custom build with this fix implemented.


load / store with alignment

Explicitly set alignment attribute for load / store op.
Improve DistilBert BF16 Training with 8%, and single Gelu op with 100%.

https://registry.khronos.org/SPIR-V/specs/unified1/SPIRV.html#OpLoad


fix: add encoding="utf-8" in file_processing.py

avoids error in postprocessing because changelog is noct created in utf-8

Thanks! Good work on the PR.

Happy to help. Took some time to understand how to debug click applicaitons first. I discovered the problem when building my development environment to build/deploy packages using and enhancing the-hatchlor template. You might be interested in this cookiecutter as well as I integrated bump-my-verison in combination with generate-changelog into this cookiecutter.


Should I use shaka-player if I only want to play audio-files on my website?

Have you read the Tutorials?
yes
Have you read the FAQ and checked for duplicate open issues?
yes
What version of Shaka Player are you using?
None yet
Please ask your question
Hello!
I am not sure if I ended up in the wrong place because all I am actually looking for is a way to play an audio file on my website with the additional requirements that 1) the audio should be downloaded chunk-wise such that the user does not have to wait until the file is downloaded completely and 2) seeking should not break because of that.
Some time ago I tried to implement this using the Media Source API with some success but it's really nothing one writes in just one afternoon. Learning that I should convert all files to fragmented MP4 files and that I have to fetch particular byte-ranges within that file on the backend via HTTP-requests in order to append it to the SourceBuffer really wasn't as much fun as one would expect.
I was now wondering if the shaka-player could make my life easier here. It looks as if its main purpose is to show ads during content which is not really what I was looking for though.
Anyway, can somebody tell me if I should use shaka-player for this or is there anything else out there you could recommend to me?
I'm sorry if my question is a bit out-of-place but 99% of all tutorials or code examples I find simply download the entire audio-file in order to play it.

Shaka's purpose is to play adaptive content (DASH & HLS), which is downloaded chunk-wise.  It also supports DRM content and ads, but neither is required.
If you play an audio file (mp4 or mp3 or ogg) with audioElement.src=..., then the browser will be in charge of how much to buffer ahead, what size chunks to request, etc.  It will be dependent on the browser implementation, and you won't have control or visibility into it.
If you convert that file into DASH or HLS, you'll have control over how much is buffered (through Shaka's configuration), and you'll be able to offer multiple bitrates to scale the content quality to the user's available bandwidth (this is controlled when the DASH or HLS files are created).  You can also choose to create DASH/HLS in a single bitrate if you wish.
We offer Shaka Streamer to create DASH & HLS content: https://github.com/google/shaka-streamer  You can
configure that to decide what bitrates to create.  For audio-only, I suggest something simple like AAC stereo at 128kbit and 64kbit.  Or if it's just speech and not music, something smaller could suffice, like AAC mono at 64kbit and 32kbit.
I would be happy to guide you further on both Streamer and Player if you need it.
Does this help?

@joeyparrish Hi! Thanks for the explanation!
I'm not sure if I fully got my head around this though.
In my case I don't require live-streams or adaptive content. At least not for now. What I currently do is using the Media Source API in order to fetch the data chunk-wise from my server. For every new chunk I have another HTTP-request which holds the byte-range to fetch from a file which is stored e.g. in a Google Cloud Storage bucket. For these audio-files I am using AAC (stereo) and converted them to a fragmented MP4 format using FFmpeg.
So, I guess, what I am trying to understand is how the shaka-player actually deals with the data transfer and will I be able to restrict access only to logged-in users?

Shaka Player would deal with the data transfer, but it needs a manifest/playlist format like DASH or HLS to tell it what the URLs & byte ranges of the segments are.  If you have each segment in a separate file, the simplest format is probably an HLS media playlist.
If you want to control how much data Shaka is requesting relative to what your users are hearing, you can configure a specific bufferingGoal: https://shaka-player-demo.appspot.com/docs/api/tutorial-network-and-buffering-config.html
As for access control, there are two main options.  One is to control access at the HTTP level through an auth token of some kind.  If you are storing your content in GCS and serving from there, you may want to look into the ACLs that you can place on your cloud storage buckets.  You could also choose to run a service that authenticates your users before serving the content to them, rather than having Google Cloud Storage do it for you.
The other option for access control is DRM.  Your content is encrypted, and can only be decrypted with a license.  You run a license server (or license authentication proxy) that determines whether or not to issue a license.  The actual decryption keys are kept hidden, even from authorized users.
Does this help?


Use protocol buffers for internal StorageAPI wire encoding

@geirst please review
This is an implementation of all StorageAPI requests and responses in Protocol Buffers, replacing the existing hand-rolled binary codecs.
This helps remove a lot of tech debt and lets us be vastly more agile with protocol changes going forward. Old binary protocol implementations will be deprecated after this and should be removed on Vespa 8.
Must not be merged until we have decided what exact (near future) version to tag the protocol with.
Also pending any internal reviews of protobuf schema.

Explicit version still needs to be committed prior to merge (as well as no merge stop, of course)


attribute named like hint with default causes 'error checking inheritance'

Bug
For bugs/questions:

OS: Ubuntu 18/04
Python version import sys; print(sys.version): 3.7.3
Pydantic version import pydantic; print(pydantic.VERSION): 0.25

from enum import Enum
from pydantic.dataclasses import dataclass

# this is real life example that used enums, enum is not the issue here
# same will happen with a class or otherwise

class SomeEnum(Enum):
    A = 0
    B = 1

@dataclass
class model:
    SomeEnum: SomeEnum = SomeEnum.A

model()

The problem is caused by having the same name for the hint and class attribute.
The problem only occurs when there is a default.
I know it is brave to name class attribute same as the hint but this is what I wanted and what worked for me without pydantic.
trace:
$ python a_bug.py
Traceback (most recent call last):
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/validators.py", line 386, in find_validators
    if issubclass(type_, val_type):
TypeError: issubclass() arg 1 must be a class

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "a_bug.py", line 9, in <module>
    @dataclass
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/dataclasses.py", line 127, in dataclass
    return wrap(_cls)
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/dataclasses.py", line 122, in wrap
    return _process_class(cls, init, repr, eq, order, unsafe_hash, frozen, config)
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/dataclasses.py", line 85, in _process_class
    cls.__name__, __config__=config, __module__=_cls.__module__, __validators__=validators, **fields
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/main.py", line 574, in create_model
    return type(model_name, (__base__,), namespace)  # type: ignore
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/main.py", line 197, in __new__
    config=config,
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/fields.py", line 140, in infer
    schema=schema,
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/fields.py", line 109, in __init__
    self.prepare()
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/fields.py", line 175, in prepare
    self._populate_validators()
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/fields.py", line 253, in _populate_validators
    else find_validators(self.type_, self.model_config.arbitrary_types_allowed)
  File "/home/bartek/.pyenv/versions/rvo/lib/python3.7/site-packages/pydantic/validators.py", line 390, in find_validators
    raise RuntimeError(f'error checking inheritance of {type_!r} (type: {display_as_type(type_)})') from e
RuntimeError: error checking inheritance of <SomeEnum.A: 0> (type: enum)

For those who stumble upon this rare error, quoting the hint removes the error.
@dataclass
class model:
    SomeEnum: 'SomeEnum' = SomeEnum.A

thanks for reporting this, I'm not sure it's worth fixing. Better to use alias and name the field something else pep-8 compliant.

Sorry I was being dumb, this is not a problem with pydantic, but fundamental of python / an error in your code.
Consider the following:
class Foo:
    pass

class Bar:
    f: Foo = 1

debug(Bar.__annotations__)

Outputs:
test.py:7 <module>
    Bar.__annotations__: {
        'f': <class '__main__.Foo'>,
    } (dict) len=1

Foo the annotation to f is the class Foo defined above.
However consider this case:
class Foo:
    pass

class Bar:
    Foo: Foo = 1

debug(Bar.__annotations__)

Outputs:
test.py:7 <module>
    Bar.__annotations__: {'Foo': 1} (dict) len=1

In other words, here Foo the annotation to Foo the class property takes the value of Foo the local variable, and becomes 1.
This is not a problem with pydantic.


98 generate web page preview during test

The screenshot only appears in the Actions section of the site, and isn't readily accessible from the PR page.  This action would upload the image to a github branch and then show it in a comment on the pull request, which I think is much better.


MULTI + XAUTOCLAIM raises TypeError when

Description
When using XAUTOCLAIM on a non-existant key, a TypeError is raised because the result is incorrectly mapped.
To reproduce:
const redis = require("redis");

async function reproduceBug() {
    const redisClient = redis.createClient();
    await redisClient.connect();

    return await redisClient.multi()
        .XAUTOCLAIM('does-not-exist', 'group', 'test', 15000, '0')
        .exec();
}

reproduceBug();

I believe the issue stems from transformReply not handling the exception when it comes through, but it could also be a problem with handleExecReplies not detecting the error.
Node.js Version
Any
Redis Server Version
Any
Node Redis Version
4.6.11
Platform
Any
Logs
node bug.js
node_modules/@redis/client/dist/lib/commands/generic-transformers.js:87
    return reply.map(transformStreamMessageNullReply);
                 ^

TypeError: Cannot read properties of undefined (reading 'map')
    at transformStreamMessagesNullReply (node_modules/@redis/client/dist/lib/commands/generic-transformers.js:87:18)
    at transformReply (node_modules/@redis/client/dist/lib/commands/XAUTOCLAIM.js:17:79)
    at node_modules/@redis/client/dist/lib/multi-command.js:67:37
    at Array.map (<anonymous>)
    at RedisMultiCommand.transformReplies (node_modules/@redis/client/dist/lib/multi-command.js:65:27)
    at RedisMultiCommand.handleExecReplies (node_modules/@redis/client/dist/lib/multi-command.js:62:21)
    at Commander.exec (node_modules/@redis/client/dist/lib/client/multi-command.js:81:82)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async reproduceBug (bug.js:7:12)

I'm not very familiar with the architecture but I think a possible fix for this would be this modification to transformReplies :
    transformReplies(rawReplies) {
        return rawReplies.map((reply, i) => {
+           if (reply instanceof Error) {
+               throw reply;
+           }
+
            const { transformReply, args } = this.queue[i];
            return transformReply ? transformReply(reply, args.preserve) : reply;
        });
    }

I'm not very familiar with the architecture of the library to determine the best possible solution. Please note that this only occurs when using MULTI.

It seems like this is an issue with all commands that throws an error in "runtime", not something specific to XAUTOCLAIM:
// same bug...
await client.multi()
  .set('key', 'value')
  .hGetAll('key')
  .exec();

How do you expect the client to behave in this scenario? to resolve with the error in the respective index? reject with custom error that contains all the replies?
// resolve with the error:
const replies = await client.multi()
  .set('key', 'value')
  .hGetAll('key')
  .exec();
// replies = ['OK', ErrorReply('...')]

// reject with custom error:
try {
  await client.multi()
    .set('key', 'value')
    .hGetAll('key')
    .exec();
} catch (error) {
  if (error instanceof MultiReplyError) {
    error.replies;
    // replies = ['OK', ErrorReply('...')]
  }
}

It seems like this is an issue with all commands that throws an error in "runtime", not something specific to XAUTOCLAIM:

I suspected that but didn't have enough evidence. I just wanted to put out a bug report to make sure this is captured (notice above how I'm still experimenting).

How do you expect the client to behave in this scenario?
Ideally throw the exception reply from redis, as it stands currently the error is lost and it took us quite a while to figure out what happened.

The solution I proposed above isn't very good as it loses the stack trace from the original call (assuming it is uncaught).


Can we support multi-remotePath on the same server like below

{
"name": "chi-cdk",
"host": "<IP_ADDRESS>",
"username": "ddai",
"password": "dds/2020",
"protocol": "sftp",
"agent": null,
"privateKeyPath": null,
"passphrase": null,
"passive": false,
"interactiveAuth": true,
"remotePath": ["/home/ddai/7250codes/caf/vendor/qcom/proprietary/chi-cdk",/home/ddai/7250codes/caf/vendor/qcom/proprietary/camx"],
"uploadOnSave": true,
"syncMode": "update",
"ignore": [
"/.vscode/",
"/.git/",
"**/.DS_Store"
],
"watcher": {
"files": "glob",
"autoUpload": true,
"autoDelete": true
}
}

"remotePath": ["/home/ddai/7250codes/caf/vendor/qcom/proprietary/chi-cdk",/home/ddai/7250codes/caf/vendor/qcom/proprietary/camx"],

I work on projects that require files from several directories, which share almost none of the path. So, I spend too much time moving up and down the directory tree. Being able to name several directories would be helpful.


etcdctl put command issue

Hi,
When using etcd 3.3.8, and run below command:
[postgres@rh2 ~]$ ETCDCTL_API=3 etcdctl put test1 "Hello World!"
bash report error:
-bash: !": event not found
Question: Why we do not support ! in the value?
Thanks!

Try ./bin/etcdctl put foo "a b\!"?

yes, after add , it can be added, but the result also has \ like:
[postgres@rh1 ~]$ ETCDCTL_API=3 etcdctl get test1
test1
Hello World!
It meas if I use my own program I'll get a string include \ ,
It is ok to add special handling code with this \ , but do we have a way to put string without \ ?
I mean get "Hello World!" from etcd.
Thanks.

@FatMole

It meas if I use my own program I'll get a string include \ ,

Did you mean the new line character?

do we have a way to put string without \ ?

I would take a look into Go clientv3 library, and do not worry about handling corner cases around delimiter.

yes, I mean I will get Hello World!, with slash.
And I wonder if there's a way I can get the reture string without slash.
Thanks.


list_leads email query returning 0 results

Sometime in the last few days search queries such as the following have stopped returning any results for me:
client.list_leads(email<EMAIL_ADDRESS>
# RESPONSE: {"has_more"=>false, "total_results"=>0, "data"=>[]}

Other queries are still working fine. For example this works:
client.list_leads(name: "Example")
I also tested the API in python with the following and it worked fine:
lead_results = client.get('lead', params={'query'<EMAIL_ADDRESS>Any idea if something changed with the Close API recently that would have caused this issue?
(I'm using gem v3.1.0.)
Thanks!

I assume that at one point, this call returned results as expected?
client.list_leads(email<EMAIL_ADDRESS>

I just tested against my Close.io instance and it works as expected.
If you paste the email you're searching for into the Close.io app, do you get results? Maybe the email you're searching for was removed or the contact itself was removed.

Weird! Thanks so much for looking into that for me.
Yes, that call did work fine in the past, and it still works fine searching for that email within the Close.io app and using the sample python code provided by Close. Is there maybe an alternate syntax I can use with your gem to test finding a lead by email? Maybe client.get(...)?
Thanks!

What's the result of this?
<EMAIL_ADDRESS>

That works. So I think I figured this out. In my testing outside of my app I was searching with code such as the following:
client.list_leads(email<EMAIL_ADDRESS># total_results == 0

But actually email: needs to be in quotes as well, as follows:
client.list_leads("email<EMAIL_ADDRESS># total_results == 4 (though only one lead actually has that exact email)

This despite the fact that it seems to work either way for a name query:
client.list_leads(name: "Test")
client.list_leads("name: Test")
# These 2 queries return the same results.

An additional piece of why I had difficulty troubleshooting this is because even though my production app does the email query the way that works, all of the emails I was using for testing began returning more than one result (a recent change it seems), and my code expects total_results to equal 1 when doing an email query. For some reason Close (even in the app) often returns extraneous results even when searching for a specific email (results with similar emails for example), but I believe that in the past when querying via the API with an email query it actually did formerly return just the 1 result.
Thanks so much for your help and your work on this! If you know of a way to query Close to get it to only return the results with exact matching email, that would be great to know. I suppose I could just limit to 1 result and assume the first one is the one that matches most closely.
Thanks again for your help.

I am tracking the same issue, it stopped working for us yesterday or so. Our code also was running fine before, and I just tested that solution @mgoren came with. Thank you. Even it is a workaround, it will help. Still looking for what changed back there.

Something must've changed on the API side then.
Any changes in the service that would have an effect here?
cc @philfreo @nickpersico

@taylorbrooks @quantummachina @mgoren Thanks. I've pinged the team about this and we'll chime in soon.

We are in the middle of migrating to some new infrastructure and it looks like it created this change in the search behavior.  I will give another update shortly once we get to the bottom of this.

Upon further experimentation, I figured out a fix.
Originally I had been searching as follows:
client.list_leads(email<EMAIL_ADDRESS># worked in the past but now returns 0 results

When that stopped working, I changed to the code I mentioned above:
client.list_leads("email<EMAIL_ADDRESS># returns multiple results, including extraneous ones

This successfully returned results, but included extraneous ones. To retrieve only exact matches I included quotes around the entire query but also around the email within the query:
client.list_leads('email<EMAIL_ADDRESS># returns just the exact match

Following-up on this issue.  We are in the middle of adding some more sophisticated email searching functionality by parsing addresses around the @ symbol.  But this actually got inadvertently triggered in this particular case because the search terms are being single quoted instead of double quoted.
I believe all that needs to be done is change this line https://github.com/taylorbrooks/closeio/blob/94e52325ff2f1d8a76a0aee4586533a55efe3aab/lib/closeio/client.rb#L75
to query.map { |k,v| "#{k}:\"#{v}\"" }.join(' ') so it uses double quotes.
Should probably also check if it is already wrapped in quotes just to be safe.

I believe this issue has been fixed, but in the event that it hasn't, please open a new issue.


[ie/afreecatv:live] Add cdn extractor-arg

AfreecaTV's API will serve different m3u8 URLs depending on the value of the return_type parameter we send. The return_type value is a CDN ID, and each ID is tied to a CDN hostname.
We are given a CDN ID to use in an earlier API response, but sometimes this is a bad ID that results in an unresolvable hostname (e.g. Korea gets gs_cdn which returns an m3u8 URL with the unresolvable hostname chromecast.afreeca.gscdn.com -- this is what 9073ae6458f4c6a832aa832c67174c61852869be attempted to fix).
But hardcoding a single working CDN ID is problematic since the best CDN for a given user is dependent upon the user's region; see #6497 and https://github.com/yt-dlp/yt-dlp/issues/9345#issuecomment-2048088892 .
This PR attempts to solve this by doing the following:

Adding a fallback/retry loop for format extraction that will iterate through a list of known working CDN IDs
Filtering out known bad/unresolvable CDN IDs from the API response
Adding the extractor-arg cdn by which users can pass one or more CDN IDs (overriding the hardcoded list of working CDN IDs)

Closes #6497
Resolves https://github.com/yt-dlp/yt-dlp/issues/9345#issuecomment-2048088892
Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8 and ran relevant tests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check all of the following options that apply:

[x] I am the original author of this code and I am willing to release it under Unlicense

What is the purpose of your pull request?

[x] Fix or improvement to an extractor (Make sure to add/update tests)

Can you add kt_cdn and gs_cdn_chromecast to _BAD_CDNS?
These CDNs seem to have poor video quality and almost always don't work (returning 400 Bad Request when downloading m3u8 information).


feat: Add Webpack bundler to improve performance

I purpose AuthBee can use Webpack (or other js bundler like esbuild) to improve output performance and more cool feature
I'm ok to do that if you want.
Best regards,
Jonathan

Hi Jonathan,
Sure you can do it and create a pull request.
Thanking you
Shakya Peiris


Unable to Use Custom Libraries with PlatformIO

Description:
I previously used the following configuration in my platformio.ini to include custom libraries:

[env]
platform = https://github.com/pioarduino/platform-espressif32/releases/download/51.03.10+rc1/platform-espressif32.zip

platform_packages=
   framework-arduinoespressif32-libs @ https://github.com/rvbc1/esp32-arduino-lib-builder/releases/download/v3.1.0/esp32-arduino-libs-3.1.0.zip

This setup allowed me to use my custom SDK configuration, which is crucial for my project. However, this method is no longer working.
Question:
How can I fix this issue and continue using my custom libraries with PlatformIO? Is there an updated approach or alternative method to achieve the same result?

Okay, I checked the official Espressif libraries, and they are working fine. I realized that I was using the master branch of the library builder instead of the v5.3 branch. I will check the v5.3 branch and provide an update.

Okay, it was my mistake; everything is working now. However, I am getting the following warning for every compiled file:
Compiling build/hw_v1_debug/FrameworkArduino/main.cpp.o
<command-line>: warning: "ESP32" redefined
<command-line>: note: this is the location of the previous definition
<command-line>: warning: "ESP32" redefined
<command-line>: note: this is the location of the previous definition

Does anyone know the source of this problem? I didn’t add the ESP32 flag in the PlatformIO configuration.

The CI examples do compile without any warnings.


implementing async versions

See: https://github.com/rainxh11/Revoke.NET/issues/5#issuecomment-1379009974

@rainxh11 --I have rights to merge the PR, but I'd rather you look over the code once before the PR is merged
Also, in my comment https://github.com/rainxh11/Revoke.NET/issues/5#issuecomment-1379009974 I have some questions and items for you
Thanks! 🚀


Wombat Pull request for after comp

double arm and mecanum added.
not for us because we dont use them but useful for other teams probably

dont merge until after comp


Add glob collector

The directory collector is based on a regex (which also is flagged as case insensitive). I would really like to be able to use a glob pattern (maybe allow the non-php glob pattern dir/**/somethingDeeper).
As I understood it is possible to create custom collectors, but would you be interested in a PR adding a glob collector (and should it allow the double star)?

As a suggestion it could use https://packagist.org/packages/webmozart/glob for the ** pattern.

As I understood it is possible to create custom collectors, but would you be interested in a PR adding a glob collector (and should it allow the double star)?

By the lack of response I understand there is no interest in having this generally available.

I agree it would be great to have this, it's especially hand for monorepos where there is the same structure for multiple applications

Nice to see this is added 🎉


Design and stub out messaging service

Come up with high-level messaging requests and responses.
Handles messaging between two parties (buyer and seller). Lots of thinking needed here.

Our thinking has developed a bit since we wrote that, but the same high-level objectives apply. We're currently considering using IPFS pubsub chat rooms as the foundation for conversations between buyers and sellers. Everything would be encrypted of course. Instead of looping in the arbitrator from the beginning, we'd allow either the buyer or seller to reveal the message thread to an arbitrator & the arbitrator would be able to verify the accuracy of what was said by checking a chain of signatures.
This approach would mean that we're not dependent on the bridge server for arbitration since all conversations will be stored publicly on IPFS, only encrypted.
The specific encryption method hasn't been defined either, but the leading contenders are 1) deriving a key from the private key of your ETH wallet (more convenient than having to sign each message using Metamask) or 2) using PGP.
It's also possible that we do something totally different once we get working on an implementation.

One random idea (somewhat whacky and glossing over some stuff):
From IPFS, it looks like authentication is still being implemented for pubsub. Even without authentication as a feature, the buyer and seller can communicate securely over a given channel using their keypairs:

the address is a hash of the public key, so it is known that the two public keys correspond to the buyer and seller accounts
sent messages are encrypted with the public key of the message receiver
for each party, the other party's authenticity is verified via signature

There could be a requirement that there is a record of the channel being established (in order to create an audit trail). One of the contracts could have a method to generate the channel name, although this is then readable off of the blockchain. Even with the messages being encrypted, it might be good to have the channel establishment be obfuscated.
To do this, something like Diffie-Hellman could be used. Although instead of a shared secret, what is being established is a "UUID" for the channel name. If the contract generates the DH modulus and base upon the purchase occuring and stores the intermediate state, and no soft forks occur, this can take place in 1 block time (I think?[1]), which is on an order suitable for near-realtime messaging use cases such as connected car / ridesharing.
[1] Suppose both buyer and seller are online. When the purchase happens, an event is written to the log with the modulus and base, and read by both parties. On the next cycle, the parties compute and send the intermediate values to the contract. They are written to the log, and can be read to compute the channel UUID.

@ambertch I like how you're thinking about it. Generally the right approach.

Would it make sense for us to include the specific listing in the hash used for the channel address? (I don't think so, but worth consideration)

What if we created a channel for every wallet? That way, if you want to message someone, you just need their wallet address. This could have broad usage even beyond Origin, but to start, we could use it to notify a user when a new shared channel has been created.

@joshfraser thanks!

RE: listing information in the channel, so I'm not sure how well the approach above can generate a true UUID, maybe using listing info would be good for generating a lower collision channel name
RE: channel per wallet, what would mark a thread / conversation between parties? With Facebook Messenger, for instance, every thread is identified by the participants in the conversation. Also, how to mark which listing the messages are a part of?

So, listing information and wallet could be combined to uniquely identify messaging around a listing. The client would receive inbound messages on the channel, and it may also be good for the client to write outbound messages there as well (as to create a record of the conversation).
I don't think IPFS pubsub currently supports message persistence, although it looks like Orbit does
(https://github.com/orbitdb/ipfs-log)

Implementation Q's
Q0: When does messaging take place? (discussion during 5/9 meeting)
- Before the transaction, throughout transaction stages, and after the transaction
Q1: How would a messaging system be designed?
- One option is to use events: Ex. purchase contract currently emits a PurchaseChange event, this can trigger notifications to be sent out by the bridge server to buyer and seller
- Buyer and seller would have a client that can both receive notifications and connect to the messaging platform (whisper, public chat programs, IPFS pubsub)
Q2: How can we implement the notion of threads, like in messenger apps? (pertains to IPFS pubsub)
- One option is to have channel names correspond to account address + information from the listing. This is a simple way for buyer, seller, arbitrator, etc. to know where the messages are.
Q3: How can we encrypt the messages?
- One option is to use public and private keys of ethereum accounts
- Would require customer to give an application access to their wallet keys
Q4: How can we do arbitration?
- The messages can be stored as well as signed, so in the event of an arbitration either party can provide both the messages and the chain of message signatures
Q5: How do we store the message logs for arbitration? (pertains to IPFS pubsub)
- This is yet to be implemented https://github.com/libp2p/go-floodsub/issues/42
- Orbit built a chat implementation on top of IPFS (which stores messages)
Notes

The application isn't particularly latency sensitive, although we should measure long tail latencies (99.9, 99.99 percentile)

N/A if using a public chat program

Only 2 parties per messaging session or thread, so unlikely to run into any issues related to scale. With IPFS pubsub,

Current pubsub implementation is "floodsub", where publishes are broadcasted
A gossip protocol (reduces write amplification via not requiring brodcasts) is being implemented (https://github.com/libp2p/go-floodsub/pull/67)

Haven't taken a look at them yet, but http://matrix.org and https://vector.im have also been mentioned as messaging solutions we should investigate.

Currently I'm implementing "Q1", which broadcast events emitted by the listing and purchase contracts. My naive implementation is in the logic/notifier_service.py this services just listens for events that are processed to the indixer_service and fires of notifications to endpoints that are registered to the relevant eth_address. The device implementations for displaying the notifications are still pending(done in react native currently). This of course is only for public notifications and not for secure messaging between buyer and seller.
Having to give access to message logs for arbitration really changes the scope of this. If we do want this to persist, then maybe a ipfs chatroom might be a better option. How would an arbitrator get access to the logs, are they established beforehand?

Here is the mess of an architectural diagram that I showed in today's engineering call. @DanielVF would have been proud.
Again, the complexity arises because we are trying to make a messaging service that is
a) encrypted and secure
b) auditable under certain circumstances
c) as decentralized as possible
I am working on a document with product specs and will post that here soon. The engineering implementation will certainly evolve as @crazybuster continues to experiment.

Here is the draft outlining the implementation:
https://docs.google.com/document/d/1TnjTIBCA0VWoCmlHgmXwCL07m2RlHHJ8pGAWhF5BQeA

Considering this done though not yet merged ✅


[FEATURE] Resources For Meta Frameworks

Description
I want to add React Meta Framework resources in the Frontend Section like the next js, gatsby, and remix with their free resources.
Screenshots
No response
Additional information
No response

Please go ahead and create the PR for the same.

Okk


Less template error - "error evaluating function %: result.replace is not a function"

I was upgrading some modules when I ran into the error below, which points to an issue with this line. I've tried multiple Less versions ranging from years old to latest, still getting this error.
I'm sure I'm doing something wrong, but this error was not present on an older version. If I edit the template directly in node_modules, this error goes away.
[less] error evaluating function `%`: result.replace is not a function

22 |      bottom: 2px;
23 |      right: 5px;
24 |      .sprite(@radio-add);
   |      ^
25 |    }
26 |    .plus-green {

The value of @radio-add is 453px 211px -453px -211px 16px 16px 469px 408px '/generated/sprites/general.png' 'radioAdd';, which is the @sprite param in the function below.
.sprite-image(@sprite) {
  {{! DEV: We slice to trim off excess quotes on an escaped URL }}
  @sprite-image: extract(@sprite, 9);
  background-image: e(%('url(%a)', e(@sprite-image)));
}

Any idea what could be going on?

Hmm, I'm not too sure. When I try to compile the generated file in our tests, it all works as expected
# I've appended a `.sprites(@spritesheet-sprites);` to the end of `less.less` here
./node_modules/.bin/lessc test/expected_files/less.less

# ...
.sprites(@spritesheet-sprites);
*/
.sprite-dash-case {
  background-image: url(nested/dir/spritesheet.png);
  background-position: 0px 0px;
  width: 10px;
  height: 20px;
}
.sprite_snake_case {
  background-image: url(nested/dir/spritesheet.png);
  background-position: -10px -20px;
  width: 20px;
  height: 30px;
}
.spriteCamelCase {
  background-image: url(nested/dir/spritesheet.png);
  background-position: -30px -50px;
  width: 50px;
  height: 50px;
}

This works both against the previously set up version (3.9.0) as well as the latest (4.1.3)
$ npm install less@latest --save-dev
$ ./node_modules/.bin/lessc --version
lessc 4.1.3 (Less Compiler) [JavaScript]
$ ./node_modules/.bin/lessc test/expected_files/less.less
# Same result as above

The functions still are documented in LESS so they should work, https://lesscss.org/functions/#string-functions
Are there any modifications being done to the spritesmith or LESS setup? Can you try copy/pasting the test/expected_files/less.less with some .sprite() or .sprites() invocations as a sanity check?

@twolfson I appreciate you taking the time out of your day to assist me with this!
This is bizarre, but I have narrowed it down...My main Less file is just a collection of imports.  If I replace the contents of "generated/sprites/general.less" with that of test/expected_files/less.less then add some invocations to .sprite, I do get the same error.
@import "colors.less";
// ...
@import "generated/sprites/general.less";

.testing {
  .sprite(@sprite-snake-case);
}

// [vite] Internal server error: [less] error evaluating function `%`: result.replace is not a function
//  Plugin: vite:css
//  File: /Projects/vmobile-admin/app/less/main.less:52:2
//  50 |
//  51 |  .testing {
//  52 |    .sprite(@sprite-snake-case);
//     |    ^
//  53 |  }

However, if I move it to the root, then I do not get the error.
@import "colors.less";
// ...
@import "general.less"; // moved to root, everything works okay

These seems like just an importing issue at first but the twist is that I can leave general.less in "generated/sprites if I use the old version of the .sprite-image function inside "generated/sprites/general.less".
// generated/sprites/general.less
// ...

.sprite-image(@sprite) {
  @sprite-image: extract(@sprite, 9);
  @sprite-image-bare: ~`"@{sprite-image}".slice(1, -1)`;
  background-image: url(@sprite-image-bare);
}

// ...

Obviously I have some options for workarounds here, but still this is very strange!

It seems to be something with the url function bc when replaced with URL this doesn't produce a compilation error.
.sprite-image(@sprite) {
  @sprite-image: extract(@sprite, 9);
  background-image: e(%('URL(%a)', e(@sprite-image)));
}

Could it be some sort of collision between the Less url function and the native CSS one? Though I don't understand why it would run okay either way from the root directory.

To fully reproduce for me -
// main.less
@import "subdir/less.less"

.testing {
  .sprite(@sprite-snake-case);
}

// subdir/less.less
// -> contents of https://raw.githubusercontent.com/twolfson/spritesheet-templates/master/test/expected_files/less.less

As it turns out, I seem to be able to compile main.less successfully directly using lessc, so it would seem that the error I'm running into is being triggered by something during the overall build process. I'm using a [vite plugin]https://github.com/evont/vite-plugin-spritesmith), maybe something there.
So sorry about this and thanks again for your time.

Oh wow! That seems like really promising progress!!
Going to mark this issue as "closed" since it sounds like the issue is around Vite and its configuration, since lessc works fine
If it helps, I'd recommend taking a binary search approach to tracking down the issue. i.e.

Try a vanilla Vite build with no custom configs and get it working (good reference)
Reintroduce full config where we know it doesn't work (bad reference)
Binary search by commenting out half the lines/half the build
Continue by enabling/disabling lines until you find it works

(this assumes that Vite is a somewhat similar config to other build tools, but generally binary search troubleshooting is the fastest for me)

Great advice, thanks again for your help @twolfson !


Stableswap: Createpool logic

@ValarDragon are you going to add a description to the issue? :)

Thanks for the reminder! This came up during a call today, forgot to come back and add descriptions


Keeps asking for app registration

I run home bridge.   I get code and enter into ecobee.   It creates app.   All works fine.
I have to reboot system or update so I stop home bridge
I start it back up and it asks me to register again.  Is there no way to have it remember the registration???
thanks,
Jeff

Duplicate of #12. Unfortunately, there's not much I can do about this at the moment.


Depracated?

Is this brunch plugin depracated? If so, are there replacements?

Not anymore! See #26 for details.

actually @theocodes you'll need to remove the deprecated tag - you're the only one who can do that

done. :)


internal/atlas: byte pool leaks allocations on WritePixels with Unmanaged: true images

Ebitengine Version
v2.7.0-alpha.2.0.20231008182829-7e17b25c5666
Operating System

[X] Windows
[X] macOS
[X] Linux
[ ] FreeBSD
[ ] OpenBSD
[ ] Android
[ ] iOS
[ ] Nintendo Switch
[ ] PlayStation 5
[ ] Xbox
[X] Web Browsers

Go Version (go version)
go version go1.22.4 windows/amd64
What steps will reproduce the problem?
go get -u github.com/hajimehoshi/ebiten/v2@7e17b25c56660785a06e263bdfe82fea69004216

or
go get -u github.com/hajimehoshi/ebiten/v2@latest

package main

import (
	"fmt"
	"image"
	"log"
	"runtime"
	"time"

	"github.com/hajimehoshi/ebiten/v2"
	"github.com/hajimehoshi/ebiten/v2/ebitenutil"
)

const game_size = 128

func main() {
	ebiten.SetWindowSize(game_size, game_size)
	ebiten.SetTPS(60)
	ebiten.SetVsyncEnabled(true)
	ebiten.SetScreenClearedEveryFrame(false)
	ebiten.SetWindowResizingMode(ebiten.WindowResizingModeDisabled)
	if err := ebiten.RunGame(&game{}); err != nil {
		log.Fatal(err)
	}
}

// the larger the image, the more memory leaks
const img_size = 128

var empty_img = make([]byte, img_size*img_size*4)

type game struct {
	img        *ebiten.Image
	start_time time.Time
}

func (g *game) Update() error {
	if g.start_time.IsZero() {
		g.start_time = time.Now()
	}
	return nil
}

func (g *game) Draw(screen *ebiten.Image) {
	const unmanaged = false

	if g.img == nil {
		g.img = ebiten.NewImageWithOptions(image.Rect(0, 0, img_size, img_size), &ebiten.NewImageOptions{
			Unmanaged: unmanaged, // XXX: Changing to false stops the leak
		})
	}

	g.img.WritePixels(empty_img)

	screen.Clear()

	var mem runtime.MemStats
	runtime.ReadMemStats(&mem)
	ebitenutil.DebugPrintAt(screen, fmt.Sprintf("%d kB", mem.HeapAlloc/1024), 4, 4)

	elapsed := time.Now().Sub(g.start_time)
	ebitenutil.DebugPrintAt(screen, fmt.Sprint(elapsed), 4, 4+16)

	ebitenutil.DebugPrintAt(screen, fmt.Sprintf("Unmanaged: %v", unmanaged), 4, 4+32)

	// try to stabilize HeapAlloc for a better idea on how much memory is being retained
	runtime.GC()
}

func (g *game) Layout(int, int) (int, int) { return game_size, game_size }

What is the expected result?
Heap allocation to remain relatively stable whether an image is managed or not.
What happens instead?
Heap allocation increases with each WritePixels call on an unmanaged image.

Anything else you feel useful to add?
Setting Unmanaged: false does not leak. This problem appears to have existed since byte pooling was introduced to internal/atlas. This can be observed by comparing results against the commit prior to the one above.
No leak: 2405b7e825c63e02694c516c975d305b92a990b1
Leaking: 7e17b25c56660785a06e263bdfe82fea69004216

Thanks! More minimized case is:
package main

import (
	"image"
	"runtime"

	"github.com/hajimehoshi/ebiten/v2"
)

type Game struct {
	img   *ebiten.Image
	bytes []byte
}

func (g *Game) Update() error {
	if g.img == nil {
		g.img = ebiten.NewImageWithOptions(image.Rect(0, 0, 128, 128), &ebiten.NewImageOptions{
			Unmanaged: true,
		})
	}
	if g.bytes == nil {
		g.bytes = make([]byte, 128*128*4)
	}
	g.img.WritePixels(g.bytes)

	var m runtime.MemStats
	runtime.ReadMemStats(&m)
	println(m.HeapAlloc)

	return nil
}

func (g *Game) Draw(screen *ebiten.Image) {
}

func (g *Game) Layout(outsideWidth, outsideHeight int) (screenWidth, screenHeight int) {
	return 320, 240
}

func main() {
	if err := ebiten.RunGame(&Game{}); err != nil {
		panic(err)
	}
}

(*graphicscommand.Image).flushBufferedWritePixels is called for managed images, but not for unmanaged images. This is mysterious.

Please try 71b7cedc5b9907f4b0e8838e71688c9895d0997c (2.7) or 9bc5ed38479b9193961a339ff4b3a59cf243b16c (main), thanks

This happens only when 1. WritePixels is called on an unmanaged image and 2. the image is never used as a source (or a destination). So this should be rare in the real world situation. For 1., it can happen even with a managed image when the image is in an isolated atlas, but this is very very unlikely.


Update json5

Codecov Report

Merging #12447 (20eea7c) into main (3d13947) will decrease coverage by 0%.
The diff coverage is n/a.

@@          Coverage Diff           @@
##            main   #12447   +/-   ##
======================================
- Coverage     69%      69%   -1%
======================================
  Files        496      496
  Lines      31225    31225
  Branches    4896     4896
======================================
- Hits       21822    21795   -27
- Misses      7579     7591   +12
- Partials    1824     1839   +15

Impacted Files
Coverage Δ

...otebooks/controllers/controllerPreferredService.ts
70% <0%> (-3%)
:arrow_down:

...ractive-window/editor-integration/codeGenerator.ts
89% <0%> (-3%)
:arrow_down:

src/kernels/kernelDependencyService.node.ts
82% <0%> (-2%)
:arrow_down:

src/kernels/helpers.ts
70% <0%> (-2%)
:arrow_down:

...c/kernels/execution/cellExecutionMessageHandler.ts
79% <0%> (-2%)
:arrow_down:

src/platform/api/pythonApi.ts
68% <0%> (-1%)
:arrow_down:

...w/finder/interpreterKernelSpecFinderHelper.node.ts
60% <0%> (-1%)
:arrow_down:

...kernels/jupyter/launcher/jupyterConnection.node.ts
82% <0%> (-1%)
:arrow_down:

src/notebooks/controllers/kernelRanking/helpers.ts
61% <0%> (-1%)
:arrow_down:

src/interactive-window/interactiveWindow.ts
68% <0%> (-1%)
:arrow_down:

... and 1 more


WebPack configuration for UMD builds allowed to be overriden with a local file

Hey guys. I'm trying to make your ng2-file-upload module with UMD running in ES5 environment and there's a tiny naming issue that you don't handle. You use @angular.* regexp as external dependency but the problem is that in UDM it's addressed as ng.*. Same goes to Rx.
If you look at angular repo itself you'll find that they use rollup as a builder and they place name conversion configuration files for every module independently. This patch lets you do the same with nmg. To solve the issue with ng2-file-upload for instance this is the expected content of such file:
module.exports = {
  externals: {
    '@angular/common': 'ng.common',
    '@angular/core': 'ng.core'
  }
}

It seems that even so it doesn't work because webpack tries to resolve window[alias] and there's no way to make it try to get window[x][y] or just directly call alias.
What can I say, should you think about moving off to rollup to be compatible with Angular itself completely?


document macros REF and REF_ALTTEXT

Not that it really matters, but this kinda seems like a misuse of the COMMENT macro, since it's not doing anything here and someone looking at the code might think it does. Maybe we could use _= as a sort of comment prefix (like // in C/D).

Not that it really matters, but this kinda seems like a misuse of the COMMENT macro, since it's not doing anything here and someone looking at the code might think it does. Maybe we could use _= as a sort of comment prefix (like // in C/D).

I think COMMENT is the equivalent of //. It's defined as nothing in macros.ddoc, and it doesn't seem to be overridden anywhere. There's also DDOC_COMMENT which is defined as an HTML comment in html.ddoc. I would have named them the other way around, though.


Better name

I think this tool needs a better name. Any ideas?

PoGo.
Make your favorites stick.

Done! Thanks :smile:


feat: Added support for triggers in docker-build module when hash changes

This addition allows to monitor changes in the directories/files and rebuild images as necessary.

This PR is included in version 6.4.0 :tada:


cell calling

Hello, in the rna pipeline(v1.13), performing featurecounts at the gene level or exon level would lead to different cell numbers. With my data, the gene level gave about 6900 cells, while the exon level gave about 8100 cells. What's causing this difference?
Thank you.

When performing featurecounts at gene level, reads mapped to introns will be included.
Normally, this will increase the number of UMIs assigned to each barcode, and more barcodes will be considered as cells in the cell-calling algorithm. Therefore, the number of cells will be greater than the number of cells at the exon level.
Can you confirm that the gene level gave 6900 cells and the exon level gave 8100 cells?

Yes, It's strange.
The median UMI and genes per cell are higher at the gene level. The estimated number of cells at gene level is 6902, while it's 8157 at exon level.
In addition, mapping to mm10 or mm39 with paired genome and annotation files also gave different cell numbers, roughly 450. Is this normal?

Would you please send the HTML reports(exon and gene) to me?
<EMAIL_ADDRESS>

Sure. Thank you.


Refactor subcollectives: Use Members rather than ParentCollectiveId

Resolve https://github.com/opencollective/opencollective/issues/2633

Currently the terminology to show them in the frontend is Member collective:

This comment is interesting to bring in this discussion to better understand the need:

https://github.com/opencollective/opencollective/issues/2633#issuecomment-555911039

We basically have two needs for sub-collectives:

different currencies
specific causes (like collecting money for speaker training, collecting money for conference scholarships). this way we want to offer donors more control over how their donations may be used.

I would add that in our case we really do want one collective to be considered the parent and others as the sub-collectives (especially for the cause specific collectives).

To that we need to add that this feature also replaces the concept of "Super Collective" that used tags to group projects that are part of an organization, that we refer to as These x collectives are part of our organization in the frontend.
So whatever we choose, the term needs to acknowledge that the relation is directional (it's not just connected, one of the collective is "above" the other).
Based on that, I can think of these other alternatives to sub-collective:

Incorporated collective
Included collective
Integrated collective
Embedded collective
Member collective (brings confusion with the MEMBER role)

Ok, let's move forward with sub-collective.


the id column for the history_transactions table in the stellar-horizon DB should be a NOT NULL column in the SQL schema.

What version are you using?
Encountered on stellar-horizon-2.6.1, debian package from SDF. Confirmed on reviewing migrations in stellar/go/**/db2/migrations/schema :
What did you do?
history_transactions should be able to be used as a replica key for processes like logical replication.
What did you expect to see?
A proper unique/primary key column.
What did you see instead?
A column being used as a primary key, but which cannot be used as a replica identity.
(disregard what i'd wrote about alter table time.... i had my streams crossed)

While you could design a migration to apply this change, due to the size of history_transactions, I would recommend offering an alternate migration by which you use a concurrently created index, something like
-- create index w/o excl lock`
CREATE UNIQUE INDEX CONCURRENTLY pkey_hs_transaction_by_id ON history_transactions (id) WHERE id IS NOT NULL;

One could then adjust the table by altering the id column to NOT NULL, then adding a primary key constraint, and then dropping the old ID index with something like
-- should avoid the excl lock and tablescan by having the index
ALTER TABLE history_transactions ALTER COLUMN id SET NOT NULL;
ALTER TABLE history_transactions ADD CONSTRAINT pkey_hs_transaction_by_id PRIMARY KEY USING INDEX pkey_hs_transaction_by_id;
DROP INDEX hs_transaction_by_id;

Such a procedure, while not as convenient as a conventional migration, would allow for changing the column constraint without having to exclusive lock the transactions table for an extended length of time or having to bring stellar-horizon offline for an extended period.

On further thesting, the sequence I proposed for a non-locking update is incorrect.

The following is a much lighter weight method to add the constraint, and allows validation for making use of it apart from dealing with the migration, which is a much closer match to horizon's other migrations, I realised:
ALTER TABLE history_transactions ADD CONSTRAINT hs_transaction_id_notnull CHECK (id IS NOT NULL) NOT VALID;

Then, to validate (say for setting a replica identity), you can perform
ALTER TABLE history_transactions VALIDATE CONTSTRAINT hs_transaction_id_notnull;

later on.

There are a number of other tables in the schema whose id column is still nullable.  I'd recommend applying a constraint to enforce non-nullity for these columns in general, and perhaps only set NOT NULL on those columns in a future release, as enabling that would require validating the constraint, which does need a (not exclusive locking) table scan.

Thanks for the report. When it comes to replication we recommend creating a read replica (ingesting nodes write to primary and HTTP server(s) is connected to replica(s)). We will be adding more improvements connected to replication soon.
Because this is not a bug I'm moving it to backlog for now.


Prepare node guides for CLI v0.16

Waiting on:

[x] https://github.com/lukso-network/tools-lukso-cli/pull/234
[x] https://github.com/lukso-network/network-configs/pull/131

@Hugoo @CJ42 LGTM, CLI and network configs have been released 👍🏻

Client versions are directly taken from:
https://github.com/lukso-network/tools-lukso-cli/pull/232/


[travis] make travis run the test suite

Since #44 brings a runnable test suite to the project, let TravisCI run them

@dularion Also don't forget to go to https://travis-ci.org to activate the dularion/streama project on Travis.
see http://docs.travis-ci.com/user/for-beginners/

Okay, it's enabled now. Will do a quick test-push

Oh nvm, your pull-request did the trick. This is really cool! This is actually pretty motivating to write some tests.


Add toml property for recaptcha.failed.redirect.urls

We need the toml equivalent for the following property (currently in captcha-config.properties file)
recaptcha.failed.redirect.urls=url1_path,url2_path
Reference doc : [1] https://docs.wso2.com/display/IS580/Setting+Up+ReCaptcha

This issue is being closed due to extended inactivity. Please feel free to reopen it if further attention is needed. Thank you for helping us keep the issue list relevant and focused!


feat(visitors): Implement basic boolean expression visitors

This PR implements some basic expression visitors for boolean expressions: including a BindExpr visitor, RewriteNotExpr visitor, ExpressionEvaluator, and a ManifestEvaluator.
Appropriate unit tests are included along with adding MarshalBinary and UnmarshalBinary methods for Literals in order to process partition field statistics.

CC @Fokko @nastra @wolfeidau


Component: Multiselect

We got a request for a multi select dropdown pattern.

is also on our roadmap planned for next week: https://miro.com/app/board/uXjVOMlqJGg=/?moveToWidget=3458764541140447822&cot=14

@Cian77 will start next week composing a multi select

Code
https://next.design-system.post.ch/?path=/docs/components-select--docs
https://design-system.post.ch/#/bootstrap-samples/form-multiple-select

Closing in favour of v2 #3453


chore: update packages, apply latest black formatting

Pull Request doc
Purpose
Fix the formatting check by applying the latest black. Regenerate Pipfile.lock which includes an update to exceptiongroup rather than removal, which is what was done by dependabot for some reason.
What the code is doing
See above
Testing
Ran tox locally
Time estimate
3 min

🙏
Wait: it seems some tests are failing.

Yeah it seems xarray is updated to a version that requires python 3.9. We might have to pin that version by adding it to the Pipfile, since I don't think we can specify a minimum python version (only exact).

🙏

Wait: it seems some tests are failing.

Yeah it seems xarray is updated to a version that requires python 3.9. We might have to pin that version by adding it to the Pipfile, since I don't think we can specify a minimum python version (only exact).
edit: alternatively, we could drop 3.8 from the checks? I think someone could still install the packages in a 3.8 environment since they aren't specified exactly in setup.cfg or requirements.txt, only in Pipfile.lock. That might, however, require a user running tox locally (thus installing from Pipfile.lock) to be using >=3.9.

Yes we can drop 3.8 and add 3.11. A final update before saying 👋


Failed to load resource: the server responded with a status of 404 (NOT FOUND)

After starting the containers with docker-compose up, the first 20-30 sec
Well, it's okay, but when I try to login after 30 seconds, I get 404 error for some files.
Expected results
no 404
Actual results
404 error on login page
Failed to load resource: the server responded with a status of 404 (NOT FOUND)
vendors-major.aee09120.chunk.js: 1 Failed to load resource: the server responded with a status of 404 (NOT FOUND)
vendors-addSlice-dashboard-explore-preamble-profile-showSavedQuery-sqllab-welcome.aee09120.chunk.js: 1 Failed to load resource: the server responded with a status of 404 (NOT FOUND)
vendors-addSlice-dashboard-explore-preamble-profile-sqllab-welcome.aee09120.chunk.js: 1 Failed to load resource: the server responded with a status of 404 (NOT FOUND)
preamble.aee09120.entry.js: 1 Failed to load resource: the server responded with a status of 404 (NOT FOUND)
vendors-major.aee09120.chunk.js: 1 Failed to load resource: the server responded with a status of 404 (NOT FOUND)
vendors-addSlice-dashboard-explore-preamble-profile-showSavedQuery-sqllab-welcome.aee09120.chunk.js: 1 Failed to load resource: the server responded with a status of 404 (NOT FOUND)
vendors-addSlice-dashboard-explore-preamble-profile-sqllab-welcome.aee09120.chunk.js: 1 Failed to load resource: the server responded with a status of 404 (NOT FOUND)
preamble.aee09120.entry.js: 1
Screenshots

How to reproduce the bug

Go to project folder
docker-compose up -d
go login page
See 404 error

Environment

superset version: Superset 0.999.0dev
python version: Python 3.6.9
node.js version: v10.19.0
npm version: 6.13.4

Checklist
Make sure these boxes are checked before submitting your issue - thank you!

[ x] I have checked the superset logs for python stacktraces and included it here as text if there are any.
[ x] I have reproduced the issue with at least the latest released version of superset.
[x ] I have checked the issue tracker for the same issue and I haven't found one similar.

Additional context

same result when restarting incubator-superset_superset_1 container, first 20-30 sec no problem then 404 error

Any word on this? It just started happening on our end as well here. EXACT same issue.

It looks like your front-end assets are not building correctly. Please check the output of the container superset-node for errors when building front-end assets for the project. Post any errors you discover here and I'll do my best to help.

okay so for what it's worth the problem was that our machine was out of disk space and randomly failing to serve some assets. totally 100% my fault!

I'm glad you resolved it!