Currency with autogroup and no digits not working

If I use the following settings, things get a little bit crazy.  After a couple of keystrokes (often on the first keystroke), the cursor jumps all the way to the left and my keystrokes are prepended to the number - basically, it starts typing backwards.
alias: 'currency',
autoGroup: true,
digits: 0,
What I'm trying to achieve is a textbox that accepts currency in whole dollars (no decimal point or digits to the right).  I'd like to have commas every 3 digits.  It works fine when I remove the autoGroup or the digits, but using both causes a problem.
Am I doing something wrong? Or should this work?
Thanks!  (And thanks for an incredibly useful component!)

The behavior ONLY happens when I attach another keypress event that actually sets a value on another textbox that has an input mask.  The scenario is there are multiple textboxes (all of which have a mask like the one above).  There is a keypress event set on all of the textboxes (except the last).  On  the keypress, a function will take the (numeric) value of each textbox, sum it up, and put it in the last box.  This seems to cause the problem.
I was able to get around the problem by manually making my keypress event the last event the textboxes (i.e. it executes AFTER inputmask has completed its work).  That seems to work fine.
Thanks.

Can you create a jsfiddle for the scenario.  I will have a look on monday

Here is a jsfiddle that displays the issue:  http://jsfiddle.net/sdahbour/4d6eom3k/
I'm glad you asked for it.  I strip away all the stuff from my application to create a nice, easy to follow example that demonstrates the problem and isolated what actually causes the issue.
I have 4 fields with a mask.  When you type into the first 3 fields, a keypress handler sums up the 3 fields and sets the value into the 4th field (which also has an input mask and is readonly).  Simply typing into any of the 3 fields causes the problem.
There are different problems in different browsers.  Chrome (v 45.0.2454.93 m) moves the cursor to the left and starts typing backwards.  in IE (v 11.0.9600.17498) the cursor jumps into the 4th field.  And Firefox (v27.0.1) doesn't display the problem at all (although, the there's a delay if you type too fast).
If I remove the inputmask from the 4th field, the problem goes away.  Obviously, if I do that, then my 4th field won't be formatted, so that's a problem.  But it seems that setting the value of a masked field during a keypress (or keyup) event is causing the problem.
THANK YOU for looking into it.  And major thanks for a really great component.

@sdahbour ,
Can you have a test yourself.
Be aware that the deletes don't trigger the keypress.  There is also a callback onKeyValidation which triggers on every keystroke in the inputmask.

Perfect!  That works great.  And thanks for the note about deletes not triggering the keypress.  I'll switch back to keyup which does get triggered by a delete.
Thanks again for an outstanding piece of software and for your responsiveness.


[0.0.2308.061] Settings Window has no window controls

Describe the bug
Settings window has no close button or window controls
Screenshots

Desktop (please complete the following information):

OS: [e.g. Windows 11]

RG35xx (please complete the following information):

GarlicOS version: [e.g.  1.4.9]

Additional context
GarlicPress 0.0.2308.061

Can't even use Ctrl-W to close it.

I also notice that also  edit skin settings are also missing window controls.

Can't even use Ctrl-W to close it.
I found Alt+F4 works.

Currently experiencing the same issue.
I'm also running Windows 11. No issues with prior releases as far as missing window controls. This release, they seemed to have disappeared.
CTRL-W seems to work for closing the window, but it doesn't appear to save the settings (I could be wrong).

Few reports of this on reddit also wondering if it's related to dpi scales? I will test and release a new version to fix tonight after work. Sorry about that.

Few reports of this on reddit also wondering if it's related to dpi scales? I will test and release a new version to fix tonight after work. Sorry about that.

Yep, that's exactly it.
Just went and tried changing scaling through Windows Display settings and sure enough that's the issue.
100% scaling works as intended, but anything beyond that seems to break the UI.

Few reports of this on reddit also wondering if it's related to dpi scales? I will test and release a new version to fix tonight after work. Sorry about that.

Hey, stuff happens.  Thanks for for giving us this tool.


README React Native Compatibility table needs to be updated

Environment
System:
OS: Windows 10 10.0.19044
CPU: (8) x64 Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
Memory: 1.67 GB / 15.94 GB
Binaries:
Node: 14.19.3 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.5 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.14.17 - C:\Program Files\nodejs\npm.CMD
Watchman: Not Found
SDKs:
Android SDK: Not Found
Windows SDK: Not Found
IDEs:
Android Studio: AI-212.5712.43.2112.8609683
Visual Studio: Not Found
Languages:
Java: 17.0.3 - C:\Program Files\Java\jdk-17.0.3\bin\javac.EXE
Python: 3.10.4 - C:\Python310\python.EXE
npmPackages:
@react-native-community/cli: ^4.14.0 => 4.14.0
react: 16.13.1 => 16.13.1
react-native: 0.63.3 => 0.63.3
react-native-windows: Not Found
npmGlobalPackages:
react-native: Not Found
Description
I just wanted to let you guys know that I think the README React Native Compatibility table needs to be updated, I tried installing with npm install @react-native-community/slider --save yesterday and was getting this error after running react-native run-android --appIdSuffix local:

which I think was introduced in 4.3.0? Anyways, I downgraded to 4.2.4, and apparently, it's working now, I guess the fix should look something like this. But I'm not 100% sure about Windows and if it's only >= 0.69 so...
React Native Compatibility
To use this library you need to ensure you are using the correct version of React Native.

@react-native-community/slider version
Required React Native Version

4.3.x
>=0.69

4.2.x
>=0.60; >=0.62 (on Windows);

3.1.x
>=0.60

2.x.x
>= 0.60

1.x.x
<= 0.59

Thank you for reporting, @Knufle!
I will take a look into that

I had the same issue;
I followed this and it seems to work as expected (as far as i can tell).

@Knufle After some investigation I found out that the problem is with the dependencies taken for new arch build when having older RN versions.
I'm working on the fix, but the idea is to avoid the compatibility issues - I don't want to have the latest 4.3.0 version be only for the latest RN versions, but I want to keep the backward compatibility instead.
That is why I decided not to update the compatibility table, but fix the Android build issue instead.
I will close this item as invalid, but please track the fix progress in #415.
I will also post here once the hotfix is released.
Thank you!

 Your proposed solution sounds very good, I'm glad to be making a teeny-tiny contribution to this amazing project :)

I am facing the same issue.

@Knufle The fix is now released in v4.3.1


⚠ Roblox TextFilter Api has degraded performance

In c0d5c8f, Roblox TextFilter Api (https://textfilter.roblox.com) experienced degraded performance:

HTTP code: 200
Response time: 2160 ms

Resolved: Roblox TextFilter Api performance has improved in 12aed85.


discord_voice.node error

discord open with a black window and in the console show this error: Uncaught Error: The specified module can not be found.
\?\E:\Programas\Portables\Discord\data\0.0.298\modules\discord_voice\discord_voice.node

an easy way to fix this (directed at the developer) is to extract the discord to a directory and have another directory set "UserProfile" all data will be kept locally. (some ie cache stuff and a few things will also store here along with msft stuff) on another note id like to see how you fix this. i like your project keep it up.

Solved in the latest release (0.0.298-12)

im curious. howddya do it? (or was it a discord issue?)

Yep a Discord issue for me

thats one risk of portable-izing, an application has issues and now you have them xD also: virus scanners are great amirite? anything that comes into existence is basically a virus XD the best part is not knowing if you messed up or an application did. :D

Yes it's not false! The executable created to make the portable application is a simple wrapper around the executable of Discord so in my opinion I greatly minimize the risks of bugs.
On the other hand, the antivirus detection and the signature of the executable is a recurring problem with the Go language :(

"go" language? i use batch for all my stuff as you probably see (and rather chaotic yet controlled coding methods) ;P

Batch is a scripting language and is not so endorsed by end users ^^

people seem okay with it as far as i know and i <3 batch whats go language btw?

What is golang ? : https://www.computerhope.com/jargon/g/golang.htm
Official website : https://golang.org/
Golang code of discord-portable : https://github.com/crazy-max/discord-portable/blob/master/main.go
Hope this helps ;)

fancy. i have a friend who makes alot of stuff in auto-it, another in python, me in batch, and now (maybe you? (friend thing)) in go :D


Provide a way to disable specific formatters

I would like a way to disable specific code formatters like "vscode.json-language-features". They are not part of an extension I can uninstall, and it always comes up as a conflict with the prettier formatter (which comes in an extension).
I currently have to configure prettier as default for a bunch of file types manually, but it would be simpler if I can disable the built-in "vscode.json-language-features" formatter, then prettier will just be the default without needing to set a default formatter for a bunch of file types (e.g. [json], [html], [typescript], etc).

@aeschl the contract is that extensions that contribute a formatter along with other things should come with a setting to disable their formatter.

Thanks @jrieken. In deed we already have such a setting: json.format.enable
@jylin Please set it to false.


implement Array at

Implement Array::at from #39
Added index to_int conversion when parameter is not an int

Well that was easy :laughing:


Read/write timeout

When you run the example in Windows 10 and there is no response to reading the registers from the device, the program just hangs without returning an error. Is it possible to set a read/write timeout?

I think you can can set the timeout within the SerialPortSettings :)

Does not work.
Regardless of the timeout set, the program hangs until it receives a response from the device.
Cargo.toml
[dependencies]
futures = "*"
tokio = "*"
tokio-core = "*"
tokio-serial = "*"
tokio-service = "*"

[dependencies.tokio-modbus]
version = "*"
default-features = false
features = ["rtu"]
git = "https://github.com/slowtec/tokio-modbus"
branch = "master"

main.rs
extern crate futures;
extern crate tokio_core;
extern crate tokio_modbus;
extern crate tokio_serial;
extern crate tokio_service;
use tokio_modbus::*;
use futures::future::Future;
use tokio_core::reactor::Core;
use tokio_serial::{Serial, SerialPortSettings};
use std::time::Duration;

pub fn main() {
    let mut core = Core::new().unwrap();
    let handle = core.handle();
    let tty_path = "COM1";
    let server_addr = 0x01;

    let mut settings = SerialPortSettings::default();
    settings.baud_rate = 19200;
    settings.timeout = Duration::from_millis(500);

    let port = Serial::from_path_with_handle(tty_path, &settings, &handle.new_tokio_handle())
        .expect(&format!("Unable to open serial device '{}'", tty_path));

    let task = Client::connect_rtu(port, server_addr, &handle).and_then(|client| {
        println!("Reading a sensor value");
        client
            .read_holding_registers(0x082B, 2)
            .and_then(move |res| {
                println!("Sensor value is: {:?}", res);
                Ok(())
            })
    });

    core.run(task).unwrap();
}

I can confirm this on Linux after adding a timeout to the rtu-client example.

The timeout works as expected in serialport-rs. But in mio-serial read timeouts have been disabled:
https://github.com/berkowski/mio-serial/pull/10
The SerialPort implementation in mio-serial simply returns a duration of 0 for timeout(), independent of the timeout in SerialPortSettings.

This is still an open issue. Using a timeout at the service level (or above) doesn't work as expected for serial ports. As mdonoughe mentioned here tokio-proto's pipeline mode gets stuck and the client context becomes unusable. The issue is easy to reproduce by sending requests to disconnected slave devices that never respond.
@mdonoughe Do you have a working example on how to properly handle timeouts on serial ports?

I have something but it's definitely not proper.
I created a wrapper around tokio-serial which uses tokio-timer to emulate read timeouts in userspace.
Unfortunately, tokio-proto gets stuck after the first error occurs, so I ended up creating a second wrapper which issues revocable proxies to the actual transport. On the other side of tokio-modbus if I get an error I just rtu::connect_slave with a new proxy to get a clean tokio-proto state.
The code for the two wrappers isn't that bad, besides possibly being over-engineered, but the program containing them is a hack to control desks based on LTC302 motor controllers, using commands guessed based on a logic analyzer dump of what happens when pressing buttons on the control panel, and it barely works so I haven't published it yet.
tokio-proto is archived and deprecated in favor of tokio-rs/tokio-tower (tokio-rs/tokio#118) but tower is described as "WIP" and does not even have a readme file yet so it's probably not time to switch.

This is the brute-force method I also had in mind. But I hesitated to implement it, because it requires a substantial re-design and I hoped there could be a smarter solution.

Getting rid of the legacy tokio stuff is the goal.

The following repository contains an example that demonstrates how to reliably handle timeouts by reconnecting the serial port:
https://github.com/slowtec/truebner-smt100
[2019-04-06T10:10:54Z INFO  modbus_rtu] Measurements { temp: Some(Measurement { ts: 2019-04-06T10:10:54.502013602Z, val: Temperature(20.32) }), vwc: Some(Measurement { ts: 2019-04-06T10:10:54.599540976Z, val: VolumetricWaterContent(0.0) }), perm: Some(Measurement { ts: 2019-04-06T10:10:54.695348466Z, val: RelativePermittivity(1.0) }) }
[2019-04-06T10:10:55Z INFO  modbus_rtu] Measurements { temp: Some(Measurement { ts: 2019-04-06T10:10:55.494739896Z, val: Temperature(20.33) }), vwc: Some(Measurement { ts: 2019-04-06T10:10:55.590601744Z, val: VolumetricWaterContent(0.0) }), perm: Some(Measurement { ts: 2019-04-06T10:10:55.686530311Z, val: RelativePermittivity(1.0) }) }
[2019-04-06T10:10:56Z INFO  modbus_rtu] Measurements { temp: Some(Measurement { ts: 2019-04-06T10:10:56.501411582Z, val: Temperature(20.32) }), vwc: Some(Measurement { ts: 2019-04-06T10:10:56.597277162Z, val: VolumetricWaterContent(0.0) }), perm: Some(Measurement { ts: 2019-04-06T10:10:56.692580367Z, val: RelativePermittivity(1.0) }) }
[2019-04-06T10:10:58Z WARN  modbus_rtu] Reconnecting serial port /dev/ttyUSB0 after error: reading permittivity timed out
[2019-04-06T10:10:58Z INFO  truebner_smt100::modbus::rtu] Connecting to serial port /dev/ttyUSB0
[2019-04-06T10:10:58Z INFO  modbus_rtu] Measurements { temp: Some(Measurement { ts: 2019-04-06T10:10:58.500550131Z, val: Temperature(20.31) }), vwc: Some(Measurement { ts: 2019-04-06T10:10:58.612426646Z, val: VolumetricWaterContent(0.0) }), perm: Some(Measurement { ts: 2019-04-06T10:10:58.724233908Z, val: RelativePermittivity(1.0) }) }
[2019-04-06T10:10:59Z INFO  modbus_rtu] Measurements { temp: Some(Measurement { ts: 2019-04-06T10:10:59.507167892Z, val: Temperature(20.34) }), vwc: Some(Measurement { ts: 2019-04-06T10:10:59.619242006Z, val: VolumetricWaterContent(0.0) }), perm: Some(Measurement { ts: 2019-04-06T10:10:59.731071098Z, val: RelativePermittivity(1.0) }) }
[2019-04-06T10:11:00Z INFO  modbus_rtu] Measurements { temp: Some(Measurement { ts: 2019-04-06T10:11:00.498118521Z, val: Temperature(20.34) }), vwc: Some(Measurement { ts: 2019-04-06T10:11:00.609392695Z, val: VolumetricWaterContent(0.0) }), perm: Some(Measurement { ts: 2019-04-06T10:11:00.706263056Z, val: RelativePermittivity(1.0) }) }
[2019-04-06T10:11:01Z INFO  modbus_rtu] Measurements { temp: Some(Measurement { ts: 2019-04-06T10:11:01.505252206Z, val: Temperature(20.32) }), vwc: Some(Measurement { ts: 2019-04-06T10:11:01.616445783Z, val: VolumetricWaterContent(0.0) }), perm: Some(Measurement { ts: 2019-04-06T10:11:01.728911489Z, val: RelativePermittivity(1.0) }) }

The proposed solution causes new issues and works only if the serial port is not used exclusively. When the port is shared (as in the example) input data may get consumed by multiple client services resulting in incomplete and dropped frames. Not always, but reproducible.
I'm still looking for a solution to get rid of stale client bindings from tokio-proto that seem to occupy the serial port forever, even when dropping the context. Stopping and restarting the core runtime would be the very last resort. Any ideas welcome.

A workaround for reliably dropping stale client connections will hopefully be available soon: #24
Successfully tested with exclusive serial port connections. The port can be reconnected and used for connecting a new client context after dropping this poison pill.

A complete Modbus RTU example with timeout handling and error recovery can be found here:
https://github.com/slowtec/truebner-smt100/blob/master/examples/modbus-rtu.rs

@aleksey-r I think we can close that issue now. Feel free to reopen it if there are questions left.


Unable to install the plugin

I'm unable to install the plugin. It  gives the following errors
Installing "cordova-plugin-geofence" for android
Installing "cordova-plugin-add-swift-support" for android
Android Studio project detected
Installing "cordova-plugin-compat" for android
Plugin doesn't support this project's cordova-android version. cordova-android: 7.1.4, failed version requirement:
<6.3.0
Skipping 'cordova-plugin-compat' for android
Installing "es6-promise-plugin" for android
thanks in advance

Hello,
I'm having the same issue and cannot compile for Android in a new Ionic 4 project.
Installing "cordova-plugin-compat" for android
Plugin doesn't support this project's cordova-android version. cordova-android: 8.0.0, failed version requirement:
      <6.3.0

Did anyone managed to make it work with an Ionic 4 project?
Thanks.

same issue here

I found this one which will install without a issue for me
https://github.com/compelling/cordova-plugin-geofence

I found this one which will install without a issue for me
https://github.com/compelling/cordova-plugin-geofence


scripts/install-rkt: add iptables dependency

Closes #3306

lgtm

Looks fine.
While you're at it, can you synchronize the dependencies in scripts/pkg/build-pkgs.sh?

@squeed I did a quick check before pushing there, the dependency should be already there.

lgtm


Typo in turing configuration file

https://github.com/NixOS/nixos-hardware/blob/07d15e8990d5d86a631641b4c429bc0a7400cfb8/common/gpu/nvidia/turing/default.nix#L3

Right. Pull requests are welcome.

https://github.com/NixOS/nixos-hardware/pull/1216


Bug fix: Improve cracking integration tests and examples on M-series hardware

Description
On apple m-series hardware, the cracking simulations fail in the examples and integration tests. The error message suggested adjusting dt_max, but I did not get that working. What worked instead was adjusting the size of the mesh used in the simulation. This change does not address the root cause of the issue, but can make the tests run. Having failing tests makes it difficult to see if new changes are causing issues.
Original:
var_pts = {
    "x_n": 20,  # negative electrode
    "x_s": 20,  # separator
    "x_p": 20,  # positive electrode
    "r_n": 30,  # negative particle
    "r_p": 30,  # positive particle
}

New:
var_pts = {
    "x_n": 20,  # negative electrode
    "x_s": 20,  # separator
    "x_p": 20,  # positive electrode
    "r_n": 26,  # negative particle
    "r_p": 26,  # positive particle
}

Related #3140
Type of change
Minor adjustment to the integration tests and examples to improve compatibility for Mac.

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

Key checklist:

[x] No style issues: $ pre-commit run (or $ nox -s pre-commit) (see CONTRIBUTING.md for how to set this up to run automatically when committing locally, in just two lines of code)
[x] All tests pass: $ python run-tests.py --all (or $ nox -s tests)
[x] The documentation builds: $ python run-tests.py --doctest (or $ nox -s doctests)

You can run integration tests, unit tests, and doctests together at once, using $ python run-tests.py --quick (or $ nox -s quick).
Further checks:

[x] Code is commented, particularly in hard-to-understand areas
[x] Tests added that prove fix is effective or that feature works

Lychee error is corrected in #3373

@BradyPlanden Should be good to go after the tests pass. It all worked locally after the merge


update Compose release link, clarified download pattern

What's changed

Updated Compose download examples to latest release of Compose (1.13.0)
Added an important style reminder admonitions that release numbers in examples may become out-of-date, so check the release number in the download command
Added a link to the Compose releases page in the Windows section (it's already in the Linux section)
Experimented with notitle admonitions to surface the point of the note better - will add this CSS update in another PR simultaneous, and add examples on the test.md page

Related
Fixes #3216
Reviewers
@Snake-Tn @shin- @dnephin @joaofnfernandes @mstanleyjones
Signed-off-by: Victoria Bialas<EMAIL_ADDRESS>

@mstanleyjones thanks, all sounds good. Working with the admonitions now so when I get those right I'll come back to these changes.

@mstanleyjones @shin-
I'm going to leave the commands on the Compose install docs page as they are for now to match the Compose releases page. I can change this if/when @shin- changes that page to show download commands with variable notation $(uname -s)  and $(uname -m) instead of backticks.
For example, change:
curl -L https://github.com/docker/compose/releases/download/1.13.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

to:
curl -L https://github.com/docker/compose/releases/download/1.13.0/docker-compose-$(uname -s)-$(uname -m) > /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose

Thanks @mstanleyjones


luci-mod-network: bridge configuration breaks existing config

After upgrading luci-mod-network to git-21.140.43486-398982f, it says:

The existing network configuration needs to be changed for LuCi to function properly. Upon pressing “Continue”, bridges configuration will be moved from “interface” sections to “device” sections the network will be restarted to apply the updated configuration.

After the change my bridged interfaces are no accessible. I can restore fuctionality if I add option type 'bridge' back to config interface 'lan' section, and add my bridged ports lan1, lan2, lan3, and lan4 with brctl addif br-lan lan1 command (and same for the other ports). But this is not compatible with LuCi network configuration page.

Please attach your original /etc/config/network and the output of opkg list-installed netifd

`config interface 'loopback'
option ifname 'lo'
option proto 'static'
option ipaddr '<IP_ADDRESS>'
option netmask '<IP_ADDRESS>'
config globals 'globals'
option ula_prefix 'fd31:xxxx:xxxx:xxxx::/64'
config interface 'lan'
option type 'bridge'
option proto 'static'
option ipaddr '<IP_ADDRESS>'
option netmask '<IP_ADDRESS>'
option ip6assign '60'
option ifname 'lan1 lan2 lan3 lan4'
config interface 'wan'
option ifname 'wan'
option proto 'dhcp'
option peerdns '0'
list dns 'xxxx'
list dns 'xxxx'
config interface 'wan6'
option proto '6in4'
option peeraddr 'xxxx'
option ip6addr 'xxxx::2/64'
list ip6prefix 'xxxx::/64'
option tunnelid 'xxxx'
option username 'xxxx'
option password 'xxxx'
option force_link '1'
option ip6assign '64'
option defaultroute '0'
option peerdns '0'
list dns 'xxxx'
list dns 'xxxx'
option mtu '1480'`
root@OpenWrt:/# opkg list-installed netifd netifd - 2021-04-03-327da989-3

After upgrading the kernel to 5.10.39 it works.

Same here, I had to revert to my previous build r16090 because nothing worked.
Are these upgrades actually tested?
From: Császár László @.>
Reply to: openwrt/luci @.>
Date: Tuesday, 25 May 2021 at 10:15
To: openwrt/luci @.>
Cc: Subscribed @.>
Subject: [openwrt/luci] luci-mod-network: bridge configuration breaks existing config (#5068)
After upgrading luci-mod-network to git-21.140.43486-398982f, it says:
The existing network configuration needs to be changed for LuCi to function properly. Upon pressing “Continue”, bridges configuration will be moved from “interface” sections to “device” sections the network will be restarted to apply the updated configuration.
After the change my bridged interfaces are no accessible. I can restore fuctionality if I add option type 'bridge' back to config interface 'lan' section, and add my bridged ports lan1, lan2, lan3, and lan4 with brctl addif br-lan lan1 command (and same for the other ports). But this is not compatible with LuCi network configuration page.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

same here!!!

It looks like we are being left with a now broken and unusable master branch. When is this going to be fixed?

Why has this issue been closed? It isn't resolved!

@ezplanet if you're using a development branch, there's a chance that things will break. If you want to help get things fixed, do consider posting the information requested here.

For a reference: @lcsaszar was using old OpenWrt with old netifd (2021-04-03) that didn't support the new network syntax.
I didn't think originally that people may try recent LuCI with outdated OpenWrt.
That problem was fixed in the commit 17af33ee48bb ("luci-mod-network: migrate network config depending on netifd version")

After upgrading the kernel to 5.10.39 it works.

Kernel update has nothing to do with it. You switched to OpenWrt with updated netifd that also happened to have updated kernel.


Link to first announcement of joining Hacktoberfest

The original announcement is linked from the blogpost, so this isn't necessary. Appreciate the thought though. Thanks!


[MNT] Deprecate getters module

Closes #250

This looks reasonable. Have you looked at nibabel.deprecated.deprecate_with_version?
Example:
@deprecate_with_version('giftiio.read function deprecated. '
                        "Use nibabel.load() instead.",
                        '2.1', '4.0')
def read(filename):

That's pretty neat. I'll modify accordingly. Thanks
On Thu, Feb 7, 2019, 07:50 Chris Markiewicz<EMAIL_ADDRESS>wrote:

This looks reasonable. Have you looked at
nibabel.deprecated.deprecate_with_version?
Example
https://github.com/nipy/nibabel/blob/30c0bc561e0f34763c415a3fdc2b39cf0789a4ea/nibabel/gifti/giftiio.py#L16-L18
:
@deprecate_with_version('giftiio.read function deprecated. '
"Use nibabel.load() instead.",
'2.1', '4.0')def read(filename):
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/poldracklab/niworkflows/pull/305#issuecomment-461480206,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAkhxrXG8mmChKA8ZvEiJVc1MeRt_ljkks5vLEtDgaJpZM4amfbo
.

I can't use your suggestion at the moment (nipy/nibabel#723). Should we just merge and use nibabel.deprecated.deprecate_with_version when fixed?

Sure. I'm not sure it'll get fixed... It would need to maintain current compatibility with nibabel version strings.


STORM-2020: Stop using sun internal classes. STORM-2021: Fix license. STORM-2022: fix FieldsTest

+1 LGTM

+1 Thanks that's what I forgot to address. I saw relevant JIRA issue for this but can't find.

@HeartSaVioR @satishd
I fixed a few other things that are also breaking the build on master.  If you want me the break them apart I can.

This time the failures really are unrelated :).
[WARNING] Could not transfer metadata org.apache.storm:multilang-python:2.0.0-SNAPSHOT/maven-metadata.xml from/to apache-snapshots (https://repository.apache.org/snapshots/): Connect to repository.apache.org:443 [repository.apache.org/<IP_ADDRESS>] failed: Connection timed out

I am seeing a lot of timeouts to repository.apache.org and that cause the build failures.

@revans2 I do not think you need to break them into different PRs  as these are small set of changes. I can see build failures in travis with jdk 7 but they seem to be unrelated.
+1 again.

+1

+1. I don't see a need to break them out.

STORM-2021 is also related to 1.x-branch, so I've also downmerged.

@HeartSaVioR thanks


Added ability to access the original photo when taking a picture with a live filter active

Not exactly sure what tests are failing. I didn't make very many changes, so I don't see what would cause any of the tests to fail... @lauraskelton if you could point me in the right direction that would be much appreciated.

I'm a bit worried about the memory implications of having a third copy of the full-resolution image passed around in the capturedImage. There are already some issues with out-of-memory problems on the iPhone 6+ with passing around multiple images. Also, the callback where you are setting the filter properties is overriding the image rotation handling in that method.

Yeah you're right. I tried testing on a 6+ and there's no chance it can handle this. I think a better approach would be to simply take the picture without a filter and then apply the filter in my own code after the callback. The problem is, I've reverted back to the original code, and my 6+ crashes almost every time I try to take a picture and I've optimized the rest of my code as best as I could. Any ideas on how to improve this?

I'll try to find some time to look into this- doing fancy things with the 6+ camera is tricky due to how much that device's camera image size pushes the limits of its memory.
That sounds like a good solution in the meantime.


Determine solution for searching curated content issues by author and EB member

@betterscientificsoftware/editorial-board,
As discussed at the 10/3/2019 BSSw editorial board meeting, the current approach for specifying the author(s) and EB board member for a BSSw GitHub curated content issue makes it difficult to search for the list of issues that are assigned to any one person.  The current approach seems to be to list:
Authors: <informal-name-1>, <informal-name-2>, ...
EB member: <informal-name>

like #383 showing:
Authors: Ross B.
EB member: Mark M.

However, some like #348 have:
Author: Rinku Gupta
EB member: Pat G.

and #396 has:
Author:Paul
EB member: Mark M.

As shown above, even if there is just one author, it could be listed as "Authors: ", "Author: " or "Author:".
And if there are multiple authors like:
Authors: Greg, Ross

it would be impossible to find such an issue if Ross was being searched for as an author.
And it seems that the space kills the search. For example, looking for issues containing "EB" "member" and "Ross" in this issue query gives the same list as for "EB member: Ross" in this query.
Therefore, even if everyone was 100% consistent with the convention, there is no way to search for the list of issues someone is an author or an EB board member.

If we stick to the rule that only the EB board member is to be made the GitHub Issue assignee, then one can search for the curated content issues with:

https://github.com/betterscientificsoftware/betterscientificsoftware.github.io/issues?utf8=✓&q=is%3Aissue+label%3A"curated+content+ideas"+assignee%3Abartlettroscoe+

I was about to suggest similar to what you describe...

Indicate EB member assignment using the GitHub Assignees field
Indicate Author assignment by conventional text format in first comment

GitHub's issues searching has involves:, mentions:, commenter: and author: keywords for searches. All of these use a GitHub username as argument to the search.
Ignoring the potential inconsistencies of the past, would it help to use the term content_creators rather than author (which GitHub already sort of uses) as in
content_creators: Ross, Mark S., @markcmiller86

With above, this search works as expected.

You can use the above search and find this issue using

"content_creators: Ross"
"content_creators: Mark"
"content_creators: @markcmiller86"
"content_creators: mark"

So, it works for upper and lower case and it works regardless of order and presence or absence of certain entries in the names field

Likewise, these searches fail as expected...

"content_creators: foo"
"content_creators: mark, foo"

You can use the above search and find this issue using

"content_creators: Ross"
"content_creators: Mark"
"content_creators: @markcmiller86"
"content_creators: mark"

So, it works for upper and lower case and it works regardless of order and presence or absence of certain entries in the names field

@markcmiller86 : "content_creators:Mark" fails.
But following are all passes
"content_creators : Mark",
"content_creators:                      Mark",
"content_creators           :        Mark     "
"content_creators :Mark"
So, eliminating spaces completely between the "content_creators:" string and the name fails but everything else that I tested passed

While we are discussing this, I wanted to let you know that I did create a PR #429  for getting the workflow document updated to the process we currently use. Hence there is a line in that PR to indicate author but "Author : Foo". I would like this PR to be anyways merged into master.
Once we finalize this issue, we can always update the workflow.

FYI: This should be fixed this in commit 2522cdd in PR #429.
We can close this issue #426 that once that PR #429 is merged.

This should have been closed long ago since the fix is in


IOT - delete_thing only when no certificates are attached

Closes #4616
The majority of this PR consists of moving tests around to dedicated test files and splitting up test-methods to try and test a single feature per test.
The new functionality is tested in test_iot_certificates.py::test_delete_thing_with_certificate_validation
All affected tests have been verified against AWS

Codecov Report

Merging #4712 (9005346) into master (80e3b35) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##           master    #4712   +/-   ##
=======================================
  Coverage   95.28%   95.28%
=======================================
  Files         556      556
  Lines       61005    61009    +4
=======================================
+ Hits        58128    58132    +4
  Misses       2877     2877

Flag
Coverage Δ

servertests
47.81% <40.00%> (+<0.01%)
:arrow_up:

test_responses
32.49% <40.00%> (+<0.01%)
:arrow_up:

unittests
95.19% <100.00%> (+<0.01%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

moto/iot/exceptions.py
89.74% <100.00%> (+1.17%)
:arrow_up:

moto/iot/models.py
92.32% <100.00%> (ø)

Continue to review full report at Codecov.

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


config not working with sequence middleware

I registered the rate limiter like the following but it is enabled for all routes
To Reproduce
   this.bind(RateLimitSecurityBindings.RATELIMITCONFIG).to({
      RatelimitActionMiddleware: true,
    });
    this.bind(RateLimitSecurityBindings.CONFIG).to({
      name: 'redis',
      type: 'RedisStore',
      enabledByDefault: false,
    });
    this.component(RateLimiterComponent );

Expected behavior
rateLimit should be disabled for all routes
Additional context
 "loopback4-ratelimiter": "7.0.2"
  "@loopback/core": "6.0.2",
  "@loopback/express": "7.0.2",

@yeshamavani @ashishkaushik can you please check

:tada: This issue has been resolved in version 7.0.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

Thanks I'll give it a try
although I didn't understand the point of copying my code and opening a new PR!

:tada: This issue has been resolved in version 7.0.4 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Generated coreml file crash on loading

Hi, first of all thank you for providing such an amazing project.
I've tried your demo it works great.
When I tried to generate a new model following the steps and with the original .cfg and .weights file, everything works great, however when I try to load the generated yolo class from YOLO.swift, the app crashed everytime, could you help me if there's anything that I messed up ?
I'm following the steps in readme.
Great thanks.
here is the screenshot:

More info: iOS 11 beta4, Xcode 9 beta3

That error message does not contain a lot of useful info. However, the first thing I'd try is updating Xcode to beta 4.

Thanks for quick reply @hollance !
I've tried that as well, but it doesn't help.
I've found the issue, it's the problem with the tools versions. tensorflow 1.2.x + Keras 1.2.2 doesn't seemed to cause the issue.


[Bug]: Missing multithreading lock on Source Control buttons

Describe the bug
If I press the Backup (leftmost) button in source control (especially on mobile where it's a bit slower), and I press it again 1 second later, there will be duplicate notifications. Two pulls, two commits, etc running concurrently. I was now left with a broken branch on mobile, because the commit referenced an object that only existed because there was another thread that was writing git objects.
Relevant errors (if available)
`NotFoundError: could not find ab42cd42...`

Steps to reproduce
Run Backup twice in short succession on mobile.
Expected Behavior
When any of the actions is currently running (wheel is spinning in source control), I expect all the buttons to be grayed out. It should only release / make the buttons clickable again, once the last action has finished.
Addition context
From the command palette options, I see no way to correct here. I would like a git reset --hard origin/master, now I'm resorting to copying my desktop .git to my phone.
Operating system
Android
Installation Method
Other
Plugin version
2.20.0

Thanks for reporting!


Namespace macros are not respected in many instances

Description
It may be the case that the feature is abandoned, but the macros seem to be widely ignored and instead the symbols are just typed from the namespace nlohmann or, ::nlohmann
Reproduction steps
Try to build with a renamed namespace
Expected vs. actual results
Expected: successful build
Actual: multiple compilation errors where the macro is not respected
Minimal code example
No response
Error messages
No response
Compiler and operating system
any
Library version
any
Validation

[X] The bug also occurs if the latest version from the develop branch is used.
[ ] I can successfully compile and run the unit tests.

Which macros are you referring to?

Which macros are you referring to?

The ones which affect the namespace name (in detail/abi_macros.hpp): JSON_DIAGNOSTICS, NLOHMANN_JSON_NAMESPACE_BEGIN... etc

Can you give more details?

https://github.com/search?q=repo%3Anlohmann%2Fjson+"nlohmann%3A%3A"+language%3AC%2B%2B+path%3A%2F^include\%2Fnlohmann\%2F%2F&type=code
Or just try compiling with NLOHMANN_JSON_NAMESPACE defined to something

From the documentation of NLOHMANN_JSON_NAMESPACE:

When the macro is not defined, the library will define it to its default value. Overriding this value has no effect on the library.

Furthermore from the documentation of the nlohmann namespace:

The root namespace is always nlohmann.

What exactly is your issue?

Yep. Apologies. My bad. I was under the impression that one could change the namespace with macros (to prevent symbol clashes)


Update README to match LICENSE

Resolves: https://github.com/bazel-ios/cocoapods-bazel/issues/86
https://bazelbuild.slack.com/archives/CD3QY5C2X/p1676057022297459

Will admin merge this change shouldn't be related to the CI failure:
ERROR: In target "//Frameworks/a:A"; unknown variable reference "${PRODUCT_BUNDLE_IDENTIFIER}" while merging plists (key: "CFBundleIdentifier", value: "${PRODUCT_BUNDLE_IDENTIFIER}").

It could be a flake or a regression but not planning to investigate this in this PR.


DNS Policy: use CIDR notation in PowerShell cmdlet

Description:
This change is a PowerShell cmdlet correction to use CIDR notation for adding DNS Client Subnets.
The goal is to avoid receiving an error message when creating the example DNS Client Subnets.
Ticket issue description:
The original example format is as follows:
Add-DnsServerClientSubnet -Name "AmericaSubnet" -IPv4Subnet "<IP_ADDRESS>/24, <IP_ADDRESS>/24"

Add-DnsServerClientSubnet -Name "EuropeSubnet" -IPv4Subnet "<IP_ADDRESS>/24, <IP_ADDRESS>/24"

Without this PR change, the above example causes the following error message when applied by using the example PowerShell cmdlet:
Add-DnsServerClientSubnet : The client subnet information provided is not in CIDR notation.

Additional changes:

Added MarkDown indent marker compatibility spacing
Added code block syntax highlighting keyword "PowerShell"

Ticket closure or reference:
Closes #4701

#sign-off


Add jQuery to handle POST request for comment form

This commit fixes possible race conditions that causes scenarios whereby the GET request is processed before POST request is fully processed.
http://jtan-sps-summer20.appspot.com/
Comment > Enter comment in the text field > Submit
Comments will be loaded automagically after submitted.

Great that you manage to test it out! Maybe you can share it with others on Wednesday.


Add a keytab field to the Spark connection (handle the base64 encoded text value as a credential).

Description
Hello,
I would like to introduce and propose a feature I have personally implemented in the SparkSubmitHook for managing Spark connections.
This feature focuses on managing the Kerberos-related principal and keytab within the connection settings.
The basic idea is to store the keytab as a base64 encoded credential. When submitting a Spark job, the credential is decoded and saved as a file, and its path is specified during the submission.

def _resolve_connection(self) -> None:
    ...
    if self._keytab is None:
        if (b64_keytab := extra.get("keytab")) is not None:
            if self._principal is None:
                raise AirflowException("Principal is not set")
            self._keytab = self._get_keytab_from_conn(b64_keytab)
    ...

def _get_keytab_from_conn(self, b64_keytab: str) -> str:
    temp_dir_path = Path(tempfile.gettempdir()).absolute()
    temp_file_name = f"airflow_keytab__{self._principal}"

    keytab_path = temp_dir_path / temp_file_name
    staging_path = temp_dir_path / f".{temp_file_name}.{time.time()}"

    try:
        with open(staging_path, "wb") as f:
            self.log.info("Saving keytab to %s", staging_path)
            f.write(base64.b64decode(b64_keytab))

        self.log.info(
            "Moving keytab from %s to %s", staging_path, keytab_path
        )
        shutil.move(staging_path, keytab_path)
        return str(keytab_path)
    except Exception as err:
        self.log.error("Failed to save keytab: %s", err)
        raise
    finally:
        if staging_path.exists():
            self.log.info("Removing staging keytab %s", staging_path)
            staging_path.unlink()

Use case/motivation
Setting up the keytab for each worker can be challenging, and managing the keytab each time it changes can be cumbersome. By storing this information within the connection, we can reduce the need to deploy the keytab every time.
I would appreciate your consideration of this proposal.
Thank you.
Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

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

@softyoungha 고고해볼게여


Include workspace name in exported filename ?

Hi there :)
While our Grist usage increases, we start to have some clashes in exported filenames (that we consume from another framework), because we have two documents with the same table inside "suivi reporting" for example.
Would that make sense to also include the workspace in the generated filename (as a prefix I'd say) ?
Thanks :)
Yohan

Do you mean CSV exports? Those are named as <docTitle>-<tableId>. In your case, are you saying that you have same-named documents, with same-named tables, in different workspaces?
Are these exports made manually from the browser, or using the API?

Do you mean CSV exports? Those are named as -. In your case, are you saying that you have same-named documents, with same-named tables, in different workspaces?

Well, not really! But close to :)
In practical, we use the workspace for "subteams" inside the ANCT, so the documents and table have "generic names", like "Suivi" for a document and "BDD" for a table. So the exported document "miss" the context (which is in the workspace).
That may be very specific to our usage, I understand.
Do you see a scenario where this naming could be customized with a plugin or something when self-hosted ?

Are these exports made manually from the browser, or using the API?

At this time, only by hand, but see #348 :)

We could add an option for whether to include the workspace name into the name of the exports, but most users, I imagine, wouldn't use that option. (For self-hosting, it could be an environment variable, to save the work of adding UI for it.)
But a much simpler solution is to rename your documents to include the workspace name, e.g. "Suivi" -> "Workspace1 Suivi" ;)

I like the env variable option :) this would indeed be pretty useful to us
While we're at it, let's also include the org / team site's name ? So with this GRIST_INCLUDE_CONTEXT_TO_DOWNLOAD_FILENAMES=true the downloaded doc would look like <orgName>-<workspaceName>-<docTitle>-<tableId> ?


docs: improve description of rev requirements for post/put document

PR summary
The goal of this PR is to improve the description of _rev/rev requirements for post/put document. I also fixed the ornamentation comment lines to 72 char length because I caught those not shared the same length. I also tried to explain where _id/docId is necessary similarly to _rev/rev.
I decided to use """...code is here...""" for code comments and ornamentation lines before and after the explanation plus the commented out codes because with this way maybe the eyes can catch what belongs to what. Something like this:
#/ ========================================================================
# Note: the next code bla bla bla..:
"""
code is here
"""
# ========================================================================

I also added missing copyright headers to the examples.
Note: An existing issue is required before opening a PR.
PR Checklist
Please make sure that your PR fulfills the following requirements:

[x] The commit message follows the
Angular Commit Message Guidelines.
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] New tests
[ ] Build/CI related changes
[x] Documentation content changes
[ ] Other (please describe)

What is the current behavior?
Lack of explanation around the usage of id and rev fields in CUD operation examples.
What is the new behavior?
Explanation in example code how to use putDocument along with postDocument and:

_id is a MUST at CREATE for putDocument
_id is OPTIONAL at CREATE for postDocument
_id is generated at CREATE when it is not provided postDocument
_id and _rev is a MUST at UPDATE
id parameter is a MUST at UPDATE for putDocument
rev parameter can be replaced by _rev in the document object both for postDocument and putDocument
id and rev parameter is a MUST at DELETE

Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information

Thanks for the reviews! I'm about to merge this!


add fix for ninja_test to build on AIX 6.1

this patch fixes issue #1618 and allows ninja_test to build on AIX.
the tests still do not complete successfully, with 1 failure. i will report that in a separate issue if this is merged.

whoops, looks like i made a mess of this, sorry, gimme a few and i'll clean it back up

i screwed this up and i'm redoing it, sorry


large ensembles with > 3 dimensions fail

I'm getting this error (again on the new_ensembles-new-learning branch)
Traceback (most recent call last):
  File "scrap.py", line 15, in <module>
    sim.run(100)
  File "/home/pawel/src/nengo_spinnaker/nengo_spinnaker/simulator.py", line 190, in run
    self.run_steps(steps)
  File "/home/pawel/src/nengo_spinnaker/nengo_spinnaker/simulator.py", line 196, in run_steps
    self._run_steps(n_steps)
  File "/home/pawel/src/nengo_spinnaker/nengo_spinnaker/simulator.py", line 260, in _run_steps
    len(self.netlist.vertices))
  File "/home/pawel/src/nengo_spinnaker/nengo_spinnaker/simulator.py", line 292, in _wait_for_transition
    raise Exception("Unexpected core failures before reaching %s state." % desired_to_state)
Exception: Unexpected core failures before reaching AppState.sync0 state.

using this code
import nengo
import numpy as np

model = nengo.Network()
with model:
    # ens = nengo.Ensemble(n_neurons=2000, dimensions=3) # doesn't fail
    ens = nengo.Ensemble(n_neurons=2000, dimensions=4) # fails

import nengo_spinnaker
import logging
logging.basicConfig(level=logging.DEBUG)
nengo_spinnaker.add_spinnaker_params(model.config)
sim = nengo_spinnaker.Simulator(model)
print 'model built.'

sim.run(100)

I haven't actually tried with fewer neurons but it's real late and i'm tired! :dash:

I haven't actually tried with fewer neurons but it's real late and i'm tired!

Just for context, we did try it with 1000 neurons and 6 dimensions, and that worked fine.....  But we didn't figure out where the neuron limit is before it dies.

Right!
On Mar 30, 2016 9:16 PM, "tcstewar"<EMAIL_ADDRESS>wrote:

I haven't actually tried with fewer neurons but it's real late and i'm
tired!
Just for context, we did try it with 1000 neurons and 6 dimensions, and
that worked fine..... But we didn't figure out where the neuron limit is
before it dies.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/project-rig/nengo_spinnaker/issues/115#issuecomment-203703339

That sounds very much like a memory error (basically one of the cores
failed to malloc the memory it desired). I imagine one of partitioning
heuristics has gone awry - I'll investigate.
On 31 March 2016 at 02:22, Travis DeWolf<EMAIL_ADDRESS>wrote:

Right!
On Mar 30, 2016 9:16 PM, "tcstewar"<EMAIL_ADDRESS>wrote:

I haven't actually tried with fewer neurons but it's real late and i'm
tired!
Just for context, we did try it with 1000 neurons and 6 dimensions, and
that worked fine..... But we didn't figure out where the neuron limit is
before it dies.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
<
https://github.com/project-rig/nengo_spinnaker/issues/115#issuecomment-203703339

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/project-rig/nengo_spinnaker/issues/115#issuecomment-203705883

@studywolf are you building executables or using the ones that were in git? The git ones were SO out of date, I'd be surprised anything works so I've submitted a new set - can you try again? That code snippet works fine for me

Ah! I thought I had done that just recently but I will try again and double check once I'm in today!

Hmm OK so are you on the 'new_ensemble-new-learning' branch? that's where I get the error. it doesn't throw it on master, though!

whooooooop! it's working after another pull! thanks!


Guardrails for C# https://github.com/ShreyaR/guardrails

[

Are we going to have something like https://github.com/ShreyaR/guardrails for c# ?
](https://github.com/ShreyaR/guardrails)

I think it's very important! Something similar to guardrails will be very important for production deployments!

@itmilos  thanks for raising this. We are currently exploring https://github.com/microsoft/typechat to solve for this but will keep this in consideration.


JKVValue Not compatible with watch os 2

Thanks, I'll look into adding watchOS support when I get a chance. Otherwise a pull request is welcomed 😄

Hey @lettierimarco, watch os target has been added on master, could you check it out and verify if it works for you use case?
Thanks,
Jeff

It looks working, waiting for install via pod

A new version has been cut! 🎊

Jeff

Sent from my iPhone
On Jun 27, 2017, 8:02 AM -0700, Marco Lettieri<EMAIL_ADDRESS>wrote:

It looks working, waiting for install via pod
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.


Updated README

#9  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @CatChen and the rest of your teammates on  Graphite


[ACC-335] upgrade blueprints neo4j to 2.3.1

Dear blueprints 2.x maintainers,
I upgraded blueprints neo4j2 to use the last neo4j distribution 2.3.1.
Let me know if you see anything wrong blocking this pull request for merge ...
Thank you

Are you aware that development on TinkerPop 2.x has stopped?  All work is on TinkerPop 3.x at this point: http://tinkerpop.apache.org  In 3.x we support later versions of Neo4j.
I don't think there's a problem with us merging in your PR, but we don't expect to have any new releases of any of the TinkerPop 2.x projects so.......

Yeah I'm aware 2.X is in maintenance mode which also means for me : be able to upgrade the neo4j DB version (if there is not so much changes).
Regarding TinkerPop 3, we first need to migrate from java 1.7 to java 1.8 as far as I understood so we will migrate to tinkerpop 3 after our java migration. Meanwhile we would like to upgrade our Neo4j database.
If you don't plan any new release on tinkerpop 2.x for maintenance tasks (ie : some upgrade or corrections), you should not say tinkerpop 2.x is in maintenance mode but is definitively closed... In such case we will manage our own release...
Thank you

If you don't plan any new release on tinkerpop 2.x for maintenance tasks (ie : some upgrade or corrections), you should not say tinkerpop 2.x is in maintenance mode but is definitively closed

hmm - that's a good point actually.  maybe that's bad terminology at this point (meaning we've been in "maintenance mode" for a while but maybe we're not anymore).  i'll bring that up on the dev list.

OK ! I'm currently working on a special release to use neo4j 2.3.1 with blueprint 2.x on a dedicated branch... I guess this will be the last (unofficial) blueprint 2.x release but let me know if you plan a last official release on 2.x (maybe there is some correction your would like to provided with 2.7 ?).
Cheers,
Mathilde


operands could not be broadcast together with shapes (5,5) (10,5)

I am trying to execute MLPGradientCheck.fit in chapter 12
But got an error
The code is copied from source code in Chapter 12
Could you please tell me where I am wrong and how to fix it?

Sorry to hear that you are having problems with that! I just reran the code from the IPython notebook (https://github.com/rasbt/python-machine-learning-book/tree/master/code/ch12) and it worked fine for me.
nn_check = MLPGradientCheck(n_output=10,
                            n_features=X_train.shape[1],
                            n_hidden=10,
                            l2=0.0,
                            l1=0.0,
                            epochs=10,
                            eta=0.001,
                            alpha=0.0,
                            decrease_const=0.0,
                            minibatches=1,
                            shuffle=False,
                            random_state=1)

Then
nn_check.fit(X_train[:5], y_train[:5], print_progress=False)

which should yield something like:
Ok: 2.55068505986e-10
Ok: 2.93547837023e-10
Ok: 2.37449571314e-10
Ok: 3.08194323691e-10
Ok: 3.38249440642e-10
Ok: 3.57890221135e-10
Ok: 2.19231256383e-10
Ok: 2.36583740198e-10
Ok: 3.43584860701e-10
Ok: 2.13345208113e-10

When I inspected the input samples and labels, they looked like this:

Can you maybe double-check that the X and y arrays have the same dimensions? Maybe something went wrong during parsing MNIST.

In #9, you mentioned that a3 is practically always a "nan" matrix. Hm, I think the easiest thing to check is the input arrays X and y. Can you please print the X_train and y_train you use to fit the model? I think that will give us some useful clues! Also, have you tried to run the IPython notebook (ch12) from this GitHub repo? I am curious if it's maybe an OS-related issue or if there may be a typo in the script. Let me know how it goes! :)

Hi:
Thank you for the quick response
I just check the X_train and y_train, it seemingly works fine

Hm, I am thinking that it could be a floating point precision problem. Would be nice if you could run the IPython notebook from this repository. It works fine from me, and it worked for the other readers as well. So, if the IPython notebook doesn't run probably on your system, I guess we could narrow the problem down further and look at floating point precision and these things

I ran IPython noteook and the result is the same

Sorry, I have never seen this problem before. I will run it on my other Linux machine tomorrow to see if I get the same prob. If you execute
>>> import numpy as np
>>> np.finfo(np.float).precision

Does is return 15 or a value higher than that?

Thank you in advance for your help
I execute the code and it return 15

oh, that's very useful info! I just see that you are running the code on Python 2.7 instead of Python 3. I guess that's what causes the problem (I will check it out on Python 2.7 later and edit the code to make it compatible)

Thank you

Hm, it worked fine for me when I ran it via Python 2.7.9 and it worked fine on my linux machine (CentOS) as well. Sorry that I don't have a good solution for you at hand ...
a) I am curious if this is Python 2.7 related, does it work for you if run the notebook via Python 3.5?
b) If you are using Python 2.7, maybe an additional
from __future__ import division
could help in your case (however, like mentioned before, it worked fine for me on Py27 without it)
c) can you please try to run
nn_check.fit(X_train[:5].astype(float), y_train[:5], print_progress=False)?
d)  Btw. did the rest of the code that came before gradient checking for okay on your machine?

Thank you for your information
I tried the code you provided, but the problem is the same
By the way, the code before gradient checking seemingly works fine

Hm, I am really curious to find out what causes this on your machine. Would you mind attaching the .py script here so that I can run it on my different machines?
In addition, it would be helpful to know which Python version and package versions you are using so that I can recreate your environment. E.g., by executing
$ python -V
Python 3.5.1 :: Continuum Analytics, Inc.
$ python -c 'import numpy; print(numpy.__version__)'
1.11.0
$ python -c 'import numpy; print(scipy.__version__)'
0.17.0

Please remove the extension ".txt", before use it
By the way, the information you need is as follows:

MLPGradientCheck.py.txt
mynewpic.py.txt

Thanks, I found the problem! When I installed SciPy 1.8.2 and NumPy 0.13.3, I got the same problem as you did. However, when I upgraded the packages to NumPy 1.9.3 and SciPy 0.14.0 it works just fine.
Although I listed the minimum version requirements on page 15 (end of chapter 1), I'd even recommend to install the latest versions, e.g., NumPy 1.11.0 and SciPy 0.17.0.

Thank you for the important information

You are welcome. Sorry, but the package updates seem to be the only solution to this problem. But aside from this chapter code, I would recommend it anyway since many bugs and problems have been fixed in the latest NumPy and SciPy releases -- I'd always try to stay up to date with these packages.

Is this problem related to this?
python recognize.py --file p364_001.wav
Traceback (most recent call last):
File "recognize.py", line 53, in
mfcc = np.transpose(np.expand_dims(librosa.feature.mfcc(wav, 16000), axis=0), [0, 2, 1])
File "/usr/local/lib/python2.7/dist-packages/librosa/feature/spectral.py", line 1279, in mfcc
S = power_to_db(melspectrogram(y=y, sr=sr, **kwargs))
File "/usr/local/lib/python2.7/dist-packages/librosa/feature/spectral.py", line 1371, in melspectrogram
mel_basis = filters.mel(sr, n_fft, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/librosa/filters.py", line 238, in mel
lower = -ramps[i] / fdiff[i]
ValueError: operands could not be broadcast together with shapes (1,1025) (0,)

did u get the fix to this?
if yes , please help me. I need some help urgently

What you wanted to do?

I am just seeing in the error output that you are using Python 2.7, it could be also related to this because I am not sure if recent versions of NumPy and scikit-learn support Python 2.7 properly anymore.

I was working on audio to text where I came into the issues. Later I found that due to version mismatch of different packages required. I suggest you to work with latest packages. The error was due to the division where denominator is giving 0

@rasbt @zhangzfmail @atanumandal0491 @YashBangera7 @SumitBando ,
Hi I am getting an error like ValueError: operands could not be broadcast together with shapes (2336,122) (121,) i am using python3 and scikit-learn==0.22.1 could any help to resolve this issue.
Thanks and Regards,
Manikantha Sekhar.

Hi there,
could you share in which chapter this is happening? Is it an error in Ch12 similar to this original issue?

@rasbt ,

from this bellow code:
from flask import Flask,flash,render_template,session, request,redirect,url_for
import PyPDF2
import docx2txt
import pandas as pd
from IPython.display import Markdown, display, clear_output
import _pickle as cPickle
from pathlib import Path
import gensim
from gensim.test.utils import datapath, get_tmpfile
from gensim.models import KeyedVectors
from gensim.scripts.glove2word2vec import glove2word2vec
import random
import os
app = Flask(name)
app.secret_key = "super secret key"
@app.route('/')
def home():
return render_template('index.html')

@app.route('/dict_output',methods = ['POST'])
def render():
if request.method == "POST":
file = request.form['file']
	file_name,file_ext = os.path.splitext(file)

	if file_ext == '.pdf':
		data = ""
		pdfFileObj = open(file, 'rb')
		pdfReader = PyPDF2.PdfFileReader(pdfFileObj)
		for page in range(pdfReader.numPages):
			# print("page:",page)
			pageObj = pdfReader.getPage(page)
			extracted_data = pageObj.extractText()
			data += extracted_data

	else:
		textfile = open(file,'r')
		data = textfile.read()

final = {}
def dumpPickle(fileName, content):

	pickleFile = open(fileName, 'wb')
	cPickle.dump(content, pickleFile, -1)
	pickleFile.close()

def loadPickle(fileName):

	file = open(fileName, 'rb')

	content = cPickle.load(file)
	print("content:",content)
	file.close()

	return content

def pickleExists(fileName):
    file = Path(fileName)

    if file.is_file():
        return True

    return False

import spacy
from spacy import displacy
nlp = spacy.load('en_core_web_sm')

#Extract answers and the sentence they are in
def extractAnswers(qas, doc):
	# print("qas:",qas)
	answers = []

	senStart = 0
	senId = 0

	for sentence in doc.sents:
		senLen = len(sentence.text)

		for answer in qas:
			answerStart = answer['answers'][0]['answer_start']

			if (answerStart >= senStart and answerStart < (senStart + senLen)):
				answers.append({'sentenceId': senId, 'text': answer['answers'][0]['text']})

		senStart += senLen
		enId += 1

	return answers

#TODO - Clean answers from stopwords?
def tokenIsAnswer(token, sentenceId, answers):
    for i in range(len(answers)):
        if (answers[i]['sentenceId'] == sentenceId):
            if (answers[i]['text'] == token):
                return True
    return False

#Save named entities start points

def getNEStartIndexs(doc):
    neStarts = {}
    for ne in doc.ents:
        neStarts[ne.start] = ne

    return neStarts

def getSentenceStartIndexes(doc):
    senStarts = []

    for sentence in doc.sents:
        senStarts.append(sentence[0].i)

    return senStarts

def getSentenceForWordPosition(wordPos, senStarts):
    for i in range(1, len(senStarts)):
        if (wordPos < senStarts[i]):
            return i - 1

def addWordsForParagrapgh(newWords, text):
    doc = nlp(text)

    neStarts = getNEStartIndexs(doc)
    senStarts = getSentenceStartIndexes(doc)

    #index of word in spacy doc text
    i = 0

    while (i < len(doc)):
        #If the token is a start of a Named Entity, add it and push to index to end of the NE
        if (i in neStarts):
            word = neStarts[i]
            #add word
            currentSentence = getSentenceForWordPosition(word.start, senStarts)
            wordLen = word.end - word.start
            shape = ''
            for wordIndex in range(word.start, word.end):
                shape += (' ' + doc[wordIndex].shape_)

            newWords.append([word.text,
                            0,
                            0,
                            currentSentence,
                            wordLen,
                            word.label_,
                            None,
                            None,
                            None,
                            shape])
            i = neStarts[i].end - 1
        #If not a NE, add the word if it's not a stopword or a non-alpha (not regular letters)
        else:
            if (doc[i].is_stop == False and doc[i].is_alpha == True):
                word = doc[i]

                currentSentence = getSentenceForWordPosition(i, senStarts)
                wordLen = 1

                newWords.append([word.text,
                                0,
                                0,
                                currentSentence,
                                wordLen,
                                None,
                                word.pos_,
                                word.tag_,
                                word.dep_,
                                word.shape_])
        i += 1

def oneHotEncodeColumns(df):
    columnsToEncode = ['NER', 'POS', "TAG", 'DEP']

    for column in columnsToEncode:
        one_hot = pd.get_dummies(df[column])
        one_hot = one_hot.add_prefix(column + '_')

        df = df.drop(column, axis = 1)
        df = df.join(one_hot)

    return df
def generateDf(text):
    words = []
    addWordsForParagrapgh(words, text)

    wordColums = ['text', 'titleId', 'paragrapghId', 'sentenceId','wordCount', 'NER', 'POS', 'TAG', 'DEP','shape']
    df = pd.DataFrame(words, columns=wordColums)

    return df
def prepareDf(df):

    #One-hot encoding
	wordsDf = oneHotEncodeColumns(df)

    #Drop unused columns
	columnsToDrop = ['text', 'titleId', 'paragrapghId', 'sentenceId', 'shape']
	wordsDf = wordsDf.drop(columnsToDrop, axis = 1)

    #Add missing colums
	predictorColumns = ['wordCount','NER_CARDINAL','NER_DATE','NER_EVENT','NER_FAC','NER_GPE','NER_LANGUAGE','NER_LAW','NER_LOC','NER_MONEY','NER_NORP','NER_ORDINAL','NER_ORG','NER_PERCENT','NER_PERSON','NER_PRODUCT','NER_QUANTITY','NER_TIME','NER_WORK_OF_ART','POS_ADJ','POS_ADP','POS_ADV','POS_CCONJ','POS_DET','POS_INTJ','POS_NOUN','POS_NUM','POS_PART','POS_PRON','POS_PROPN','POS_PUNCT','POS_SYM','POS_VERB','POS_X','TAG_''','TAG_-LRB-','TAG_.','TAG_ADD','TAG_AFX','TAG_CC','TAG_CD','TAG_DT','TAG_EX','TAG_FW','TAG_IN','TAG_JJ','TAG_JJR','TAG_JJS','TAG_LS','TAG_MD','TAG_NFP','TAG_NN','TAG_NNP','TAG_NNPS','TAG_NNS','TAG_PDT','TAG_POS','TAG_PRP','TAG_PRP$','TAG_RB','TAG_RBR','TAG_RBS','TAG_RP','TAG_SYM','TAG_TO','TAG_UH','TAG_VB','TAG_VBD','TAG_VBG','TAG_VBN','TAG_VBP','TAG_VBZ','TAG_WDT','TAG_WP','TAG_WRB','TAG_XX','DEP_ROOT','DEP_acl','DEP_acomp','DEP_advcl','DEP_advmod','DEP_agent','DEP_amod','DEP_appos','DEP_attr','DEP_aux','DEP_auxpass','DEP_case','DEP_cc','DEP_ccomp','DEP_compound','DEP_conj','DEP_csubj','DEP_csubjpass','DEP_dative','DEP_dep','DEP_det','DEP_dobj','DEP_expl','DEP_intj','DEP_mark','DEP_meta','DEP_neg','DEP_nmod','DEP_npadvmod','DEP_nsubj','DEP_nsubjpass','DEP_nummod','DEP_oprd','DEP_parataxis','DEP_pcomp','DEP_pobj','DEP_poss','DEP_preconj','DEP_predet','DEP_prep','DEP_prt','DEP_punct','DEP_quantmod','DEP_relcl','DEP_xcomp']

	for feature in predictorColumns:
		if feature not in wordsDf.columns:
			wordsDf[feature] = 0

	return wordsDf
def predictWords(wordsDf, df):

    predictorPickleName = 'data/pickles/nb-predictor.pkl'
    predictor = loadPickle(predictorPickleName)
    print("predictor:",predictor)
    y_pred = predictor.predict_proba(wordsDf)
    print("y_pred:",y_pred)
    labeledAnswers = []
    for i in range(len(y_pred)):
        labeledAnswers.append({'word': df.iloc[i]['text'], 'prob': y_pred[i][0]})

    return labeledAnswers
def blankAnswer(firstTokenIndex, lastTokenIndex, sentStart, sentEnd, doc):
    leftPartStart = doc[sentStart].idx
    leftPartEnd = doc[firstTokenIndex].idx
    rightPartStart = doc[lastTokenIndex].idx + len(doc[lastTokenIndex])
    rightPartEnd = doc[sentEnd - 1].idx + len(doc[sentEnd - 1])

    question = doc.text[leftPartStart:leftPartEnd] + '_____' + doc.text[rightPartStart:rightPartEnd]

    return question
def addQuestions(answers, text):
    doc = nlp(text)
    currAnswerIndex = 0
    qaPair = []

    #Check wheter each token is the next answer
    for sent in doc.sents:
        for token in sent:

            #If all the answers have been found, stop looking
            if currAnswerIndex >= len(answers):
                break

            #In the case where the answer is consisted of more than one token, check the following tokens as well.
            answerDoc = nlp(answers[currAnswerIndex]['word'])
            answerIsFound = True

            for j in range(len(answerDoc)):
                if token.i + j >= len(doc) or doc[token.i + j].text != answerDoc[j].text:
                    answerIsFound = False

            #If the current token is corresponding with the answer, add it
            if answerIsFound:
                question = blankAnswer(token.i, token.i + len(answerDoc) - 1, sent.start, sent.end, doc)

                qaPair.append({'question' : question, 'answer': answers[currAnswerIndex]['word'], 'prob': answers[currAnswerIndex]['prob']})

                currAnswerIndex += 1

    return qaPair
def sortAnswers(qaPairs):
    orderedQaPairs = sorted(qaPairs, key=lambda qaPair: qaPair['prob'])

    return orderedQaPairs

glove_file = 'data/embeddings/glove.6B.300d.txt'
tmp_file = 'data/embeddings/word2vec-glove.6B.300d.txt'

glove2word2vec(glove_file, tmp_file)
model = KeyedVectors.load_word2vec_format(tmp_file)

def generate_distractors(answer,count):
	# print("Answer:",answer)

	# count = 3
	# print("Count:",count)
	answer = str.lower(answer)

    ##Extracting closest words for the answer.
	try:
		closestWords = model.most_similar(positive=[answer], topn=count)
		# print("ClosestWords:",closestWords)
	except:
        #In case the word is not in the vocabulary, or other problem not loading embeddings
		return []

    #Return count many distractors
	distractors = list(map(lambda x: x[0], closestWords))[0:count]
	# print("distractors:",distractors)
	return distractors
def addDistractors(qaPairs, count):

	for qaPair in qaPairs:
		distractors = generate_distractors(qaPair['answer'], count)

		qaPair['distractors'] = distractors

	return qaPairs
def generateQuestions(text, count):
	# print("text:",text)
    # Extract words
	df = generateDf(text)
	# print("DF:",df)
	wordsDf = prepareDf(df)
	# print("wordsdf:",wordsDf)
	# print("DF:",df)
	# Predict
	labeledAnswers = predictWords(wordsDf, df)

	# Transform questions
	qaPairs = addQuestions(labeledAnswers, text)

	# Pick the best questions
	orderedQaPairs = sortAnswers(qaPairs)

	# Generate distractors
	questions = addDistractors(orderedQaPairs[:count], 3)
	# print("QQQQQQQQQ:",questions)

	for i in range(count):
		dic1 = {}
		dic2 = {}

		questions[i]['distractors'].append(questions[i]['answer'])

		options = questions[i]['distractors']
		random.shuffle(options)

		dic1['A--Question'] = questions[i]['question']
		dic1['B--Answer'] = questions[i]['answer']
		# dic2[i] = dic1
		list1 = []
		for distractor in options:
			list1.append(distractor)
		# print("LIST1:",list1)
		dic1['C--Options'] = list1
		final[i] = dic1
		# print("final:",final)

	return final
generateQuestions(data,5)

return render_template("output.html",final_data = final)

if name == "main":
app.run(debug=True)

while trying to upload txt file i am getting the output as like

while trying to upload pdf file i am getting the output like

I am little confused to  find out the issue i am getting could you help me if you need more information i will help you
Thanks & Regards,
Manikantha Sekhar.

Hi there,
it doesn't look like any code from the book?


Codegen now supports global and React-specific attributes.

These are the ones stored under the key "*" in react-html-attributes.
How to handle some of these is currently unclear (to me).
Fixes #83.

I am wondering whether we should have a blacklist in codegen/consts.js, to be able to omit certain attributes, for example, dangerouslySetInnerHTML, which otherwise now gets pulled in automatically.

Is there a reason to exclude it?

Well, I wasn't really sure how to handle it.  Or is something like this enough, do you think?
dangerouslySetInnerHTML :: Unit -> { __html :: String }

See https://reactjs.org/docs/dom-elements.html

That matches the example in the docs, but I've actually never seen it as a function before.. I wonder why that is. I think dangerouslySetInnerHTML :: { __html :: String } works as well. If there's a reason for the callback I imagine it's for effects, in which case dangerouslySetInnerHTML :: Effect { __html :: String } would make more sense (don't know why though, so I'd just make it a plain Record).

Ah, yes, I suspect there's no reason for a callback after all, so a plain record makes more sense.
Happy to make that change then ...

I tracked down all the attributes I had left as TODO (as far as the React source code, gah!).  Turns out they were all strings, so easily resolved in the end.

Well, I reviewed all the Number attributes.  This has turned into a can of worms.  Here's my summary table, with references to the MDN pages which define the types.
|--------------+-----------+-----------------------------------------------------------------------|
| attribute    | type      | reference                                                             |
|--------------+-----------+-----------------------------------------------------------------------|
| cellPadding  | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableElement     |
| cellSpacing  | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableElement     |
|--------------+-----------+-----------------------------------------------------------------------|
| cols         | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLFrameSetElement  |
| cols         | Int       | https://developer.mozilla.org/en-US/docs/Web/API/HTMLTextAreaElement  |
|--------------+-----------+-----------------------------------------------------------------------|
| colSpan      | Int       | https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableCellElement |
| frameBorder  | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement    |
| marginHeight | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement    |
| marginWidth  | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement    |
|--------------+-----------+-----------------------------------------------------------------------|
| max          | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement     |
| max          | Number    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLMeterElement     |
| max          | Number    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLProgressElement  |
|--------------+-----------+-----------------------------------------------------------------------|
| maxLength    | Int       | https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement     |
| maxLength    | Int       | https://developer.mozilla.org/en-US/docs/Web/API/HTMLTextAreaElement  |
|--------------+-----------+-----------------------------------------------------------------------|
| min          | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement     |
| min          | Number    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLMeterElement     |
|--------------+-----------+-----------------------------------------------------------------------|
| minLength    | Int       | https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement     |
| minLength    | <missing> | https://developer.mozilla.org/en-US/docs/Web/API/HTMLTextAreaElement  |
|--------------+-----------+-----------------------------------------------------------------------|
| rows         | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLFrameSetElement  |
| rows         | Int       | https://developer.mozilla.org/en-US/docs/Web/API/HTMLFrameSetElement  |
|--------------+-----------+-----------------------------------------------------------------------|
| rowSpan      | Int       | https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableCellElement |
|--------------+-----------+-----------------------------------------------------------------------|
| size         | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLBaseFontElement  |
| size         | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLFontElement      |
| size         | String    | https://developer.mozilla.org/en-US/docs/Web/API/HTMLHRElement        |
| size         | Int       | https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement     |
| size         | Int       | https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement    |
|--------------+-----------+-----------------------------------------------------------------------|

The problematic attributes are those which have different types within different elements.  These are:

cols
max
min
rows
size

The correct solution is to make the type lookup take a parameter which is the containing element type.  What do you think?
(minLength can probably be assumed to be an Int, its omission seems to be a bug on the MDN page referenced above - see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea)

Yikes, thanks for the thorough breakdown. I think you're right.. right now it's lookup in field map -> default to String, so maybe lookup a field map in type map, check that field map -> lookup in general field map -> default to string?

OK, I'll sort something like that out next week. It's Friday night now in New Zealand, yay!

Here it is, support for attributes whose type may differ according to the containing element.
I thought it clearest to disallow an attribute from appearing in both the types and typesByElement objects, since that would be prone to breakage.  The correct approach for a default other than string would be like this (which we don't require at the moment):
module.exports.typesByElement = {
  "max": {
    "input": "String",
    "*": "Number",
  },
};

@tesujimath Should * include more events like onClick? All the properties that are duplicated in Internal's shared list should be removed as well, right?

@spicydonuts Yes, absolutely.  It seems that https://github.com/jackyho112/react-html-attributes/blob/master/src/react-html-attributes.json has some mistakes and/or omissions, for example, currently onClick belongs just to the <a> element, but it should be general.
I suggest we use our own copy of react-html-attributes while we are getting this sorted out, and then contribute it upstream.  There is a bit too much friction otherwise.
Would you like me to do some more work to progress this?  I am thinking, rebase this PR on master, and remove SharedProps altogether.  And put key and ref into * in react-html-attributes?

That sounds great :)

@spicydonuts This is all done, except for ref, as I wasn't quite sure what type it should have.  Easy to add to react-html-attributes under *, and to codegen/consts.js with the type in exports.types.
Also, I didn't know how the generated-docs get generated, so they're out of date.

Nice!
Here's how I'd define refs:
-- this goes in React.Basic:
foreign import data Ref :: Type -> Type

-- this goes in codegen
  ...
  , key :: String
  , ref :: Ref (Nullable Node)
  ...

You can rebuild the docs with rm -rf generated-docs && pulp docs

@spicydonuts Right, that's all done, with a cheeky little Saturday morning contribution.

Cheeky Saturday morning contribution?

Thanks for merging. Saturday morning in New Zealand, not really a work day 😉


simplify mocks

Embed the interface that we're mocking; calling any of it's methods that are not implemented will panic, so should give the same result as before.

Codecov Report
Base: 56.70% // Head: 56.70% // No change to project coverage :thumbsup:

Coverage data is based on head (2cd52d5) compared to base (9d38ed7).
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3787   +/-   ##
=======================================
  Coverage   56.70%   56.70%
=======================================
  Files         105      105
  Lines       10674    10674
=======================================
  Hits         6053     6053
  Misses       3941     3941
  Partials      680      680

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Ensure generated code has the correct header to be picked up by code analysis.

Fixes #848

Thanks!


Change project name to ngx-responsive

Thus this project going to be aligned with other Angular projects.
Do you agree?

Hi @LFeh,
Yes, its a good idea. ; )

now ng2-responsive is called ngx-responsive supporting ng5
@ManuCutillas you can close this issue


Add option to opt in or out of saving a node's folded state

Godot version:
v3.0.6.stable.official.8314054
Issue description:
Sometimes (most of the time for me, currently) it is desired to not persist the state of which nodes are folded in a scene. This concern comes mostly from the unnecessary changes to a TSCN file when using version control.
I know that using instantiated scenes in other scenes mitigates this problem somewhat, but it does not remove it completely.
Personally, I think in most applications, folded state is a local & personal one; so I'd like to see it (attempted to be) maintained in Godot Editor cache files (like thumbnails and such). However, I know that if someone is using Godot tree widgets in their application, they may want to enforce or persist node folded states.
Proposed solution:
I can think a good compromise is to add an option to a node which can disable the persistence of folded states on it an any of its children, unless of course any of those children have that option explicitly set to not inherit from its parent and override it to something else, in which case it and its children behave as such.

Fixed since e647342140d8eb960b2a72d83b4b86e43aef4fc7.

I still get folding info saved in my scenes, is it an option I need to check?

I still get folding info saved in my scenes in Godot 3.1 beta7, is it an option I need to check?

Are you sure it's not old info saved from alpha builds? The logic in editor/editor_folding.cpp does save this in project_settings_dir, which is outside of the project folder.

@akien-mga no, it's a new project I created from 3.1 beta6, and I noticed it had folding info.

That's for SceneTreeEditor, not the inspector properties. SceneTree folding is still saved in the scenes, yes.

Ah, wait, I messed up in this case.
Reopening as per the above comments: while property folding state is not saved in the scene, node folding state is.

Already fixed in 3.2. Folding is stored outside project, even for nodes.


support Arabic and Persian

Do you have any plan to add Arabic and/or Persian languages to lunr.js?

Me personally, no. I'm not an Arabic, nor Persian speaker/reader/writer, so you really don't want me doing something like this!
There is a lunr-languages repository that does contain extensions for different languages, no Arabic, but it should give you an idea on how to add support for a language other than English.
The absolute minimum that you would need to build to get Arabic support would be something that knows how to split a string into discrete words ready for indexing. Adding a stop word filter, and stemming will produce even better results, but are not 100% required.
If you do come up with something, consider contributing to the lunr-languages project, so that others can also benefit from your work.


Update Post “2017-10-26-daft-punk”

Automatically generated by Netlify CMS

👷 Deploy Preview for vigorous-darwin-e81d1f processing.
🔨 Explore the source changes: ceb7d7641c09288fd8618aec3ba083cfb614c69b
🔍 Inspect the deploy log: https://app.netlify.com/sites/vigorous-darwin-e81d1f/deploys/61ce22dfd3293d0009285339


Added full RP2040 Support

Like on the MCP_DAC Lib I added the 2nd Bus into the Library. Validaten with the Raspberry Pi Pico and the ADS1115.

Overal it looks good, most important change I propose is to add the WIRE selection in the begin() function.

@Intubun
Thanks for testing, it looks perfect!👍
If build succeeds I will merge your changes.
It might be an idea to check again on the MCP_DAC library. Think the same pattern can be used, simplifying the API.

Yeah I think so too... Its much easier, if all Libs of a person are standardised. Im currently on the MCP_DAC Lib, The changes are working so far, but I need to change a whole lot, if I want to use the RP2040, since the "SPIClass" of the Pico is called "SPIClassRP2040" which is defenetly not great...

Moved your post to a new thread under MCP_DAC to keep discussions under the right repo.


No Android documentation for NativeEventEmitter

There used to be a section of Android docs that mentions using RCTDeviceEventEmitter to pass events between Native and JS. However, since RCTDeviceEventEmitter was deprecated in favor of subclassing NativeEventEmitter, this section of docs, instead of being updated with how to use NativeEventEmitter, just got completely deleted in this commit https://github.com/hramos/react-native/commit/b11f8f4936459c104b4fccb3da5eef1d53aa76f7.
Now the docs are strange, there's this mention that events will be described below, but they never are. We need some Android example docs for NativeEventEmitter.
I'd be happy to write this if needed.

I tried subclassing NativeEventEmitter but it requires registering a JS Module which also seems not possible right now. I documented this related but distinct issue in https://github.com/facebook/react-native/issues/14062.
However, using NativeAppEventEmitter seems to be the only way to emit events right now. Even though there is a comment that it is deprecated, I think the developer in https://github.com/facebook/react-native/commit/516bf7bd94d14600920a3d78fdcf51ea7fe48495 @nicklockwood meant to deprecate it only internally, and not externally?
In either case, some Android documentation on how to emit events, as callbacks definitely do not satisfy Native-JS communication enough!

Hi there! This issue is being closed because it has been inactive for a while.
But don't worry, it will live on with Canny! Check out its new home: https://react-native.canny.io/feature-requests/p/no-android-documentation-for-nativeeventemitter


how to leave from group/channel?

Hi Guys
I have found an API for leaving from group/channel.
telegram_api::channels_leaveChannel
but this api implemented in telegram_api namespace and I cannot call it by client_->send because send method just accept the td_api namespace commannd.
auto input_channel = get_input_channel(Supergroup->supergroup_id_);
auto send_message = td::telegram_api::make_object<td::telegram_api::channels_leaveChannel>(std::move(input_channel));

send_query(std::move(send_message),
	[this](Object object) {
		int x=0;
	});

Is there any advice? how can I send a command from telegram_api namespace.
Best regards
Ben

You can't use telegram_api directly. It isn't a part of a TDLib public interface.
You should use TDLib method instead. Namely, td_api::setChatMemberStatus should be used to manage member statuses.

Thanks a lot, it is working
sample code:
td::tl_object_ptr<td::td_api::ChatMemberStatus> MemberLeftStatus = td::make_tl_object<td::td_api::chatMemberStatusLeft>();
send_query(td::td_api::make_object<td::td_api::setChatMemberStatus>(chat_->id_, XXXXXXX, std::move(MemberLeftStatus)),
	[this](Object object) {
		if (object->get_id() == td::td_api::error::ID)
						return;
	});

Since TDLib 1.3.0 you can alternatively use leaveChat instead of setChatMemberStatus for that.

latest tdlibjson
have use tdlib sucessfully until i try joinChat and leaveChat:
[ClientJson.cpp:76][&status.is_error()]	Failed to parse [request:{\0042@type\0042:\0042leaveChat\0042,\0042chat_id\0042:-100XXXXXXXXX}] [Error : 0 : Unknown class]

@pabx06 The error means, that method leaveChat is not found. Are you sure that it is a TDLib 1.3.0? You can check TDLib version via getOption("version").

My bad i was using 1.2. Tried 1.3 it works

Since TDLib 1.3.0 you can alternatively use leaveChat instead of setChatMemberStatus for that.

why i get call setTdlibParameters first error when call leaveChat use TDlib 1.8.23

Because you didn't call setTdlibParameters with correct parameters. The method was changed some time ago and now it receives all parameters directly.

Because you didn't call setTdlibParameters with correct parameters. The method was changed some time ago and now it receives all parameters directly.

thanks, i solve the 400 error. beacause I call leaveChat before setTdlibParameters

a other question please.
when I call leaveChat (with a public channel id) multiple times, every response is 'ok'.
But I did't Leave the channel , is this method real work or configuration error of me.

@jnxyatmjx There is nothing wrong with receiving of new messages from a public channel.

@jnxyatmjx There is nothing wrong with receiving of new messages from a public channel.
even i never join or have leaved the channel?

Yes.


[ISSUE #4487]The trackType is wrong when the consumer in broadcasting subscription.

Make sure set the target branch to develop
What is the purpose of the change
#4487
add broadcast consumption judgment in examineConsumeStatsConcurrent method
Brief changelog
XX
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Codecov Report

Merging #5609 (4ff6d55) into develop (08dbe7e) will increase coverage by 0.02%.
The diff coverage is 5.26%.

@@              Coverage Diff              @@
##             develop    #5609      +/-   ##
=============================================
+ Coverage      42.37%   42.40%   +0.02%
- Complexity      7929     7939      +10
=============================================
  Files           1022     1022
  Lines          71254    71267      +13
  Branches        9399     9400       +1
=============================================
+ Hits           30196    30218      +22
+ Misses         37230    37228       -2
+ Partials        3828     3821       -7

Impacted Files
Coverage Δ

...broker/processor/AbstractSendMessageProcessor.java
33.43% <ø> (ø)

...ocketmq/broker/processor/PullMessageProcessor.java
27.72% <ø> (ø)

...ocketmq/broker/processor/SendMessageProcessor.java
37.39% <ø> (ø)

.../apache/rocketmq/common/AbortProcessException.java
0.00% <ø> (ø)

.../java/org/apache/rocketmq/common/BrokerConfig.java
28.03% <ø> (-0.12%)
:arrow_down:

...he/rocketmq/tools/admin/DefaultMQAdminExtImpl.java
25.28% <0.00%> (-0.15%)
:arrow_down:

...q/tools/admin/common/AdminToolsResultCodeEnum.java
0.00% <0.00%> (ø)

...rocketmq/remoting/netty/NettyRemotingAbstract.java
51.92% <9.09%> (+1.92%)
:arrow_up:

...apache/rocketmq/store/ha/GroupTransferService.java
92.30% <0.00%> (-1.29%)
:arrow_down:

... and 17 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Tests hang with tokio-tunstenite ~=1.20

test test::connected_stream_passes_data has been running for over 60 seconds
test test::datagram_channel_passes_data has been running for over 60 seconds

Bisected: issue began with snapview/tokio-tungstenite@f4dcfec257b06a3dbab43df9b2efa7c2b7c8a6db


Starting the app with yarn start throws a sass-related error

Trying to spin up the app with yarn start results in a sass dependency error thrown with the following trace:
[vite:css] Preprocessor dependency "sass" not found. Did you install it? Try `yarn add -D sass`.
file: /Users/rishi/work/threetwo/src/client/assets/scss/App.scss
error during build:
Error: Preprocessor dependency "sass" not found. Did you install it? Try `yarn add -D sass`.
    at loadPreprocessor (file:///Users/rishi/work/threetwo/node_modules/vite/dist/node/chunks/dep-df561101.js:39269:19)
    at scss (file:///Users/rishi/work/threetwo/node_modules/vite/dist/node/chunks/dep-df561101.js:39310:20)
    at compileCSSPreprocessors (file:///Users/rishi/work/threetwo/node_modules/vite/dist/node/chunks/dep-df561101.js:38735:36)
    at compileCSS (file:///Users/rishi/work/threetwo/node_modules/vite/dist/node/chunks/dep-df561101.js:38785:42)
    at async Object.transform (file:///Users/rishi/work/threetwo/node_modules/vite/dist/node/chunks/dep-df561101.js:38266:56)
    at async transform (file:///Users/rishi/work/threetwo/node_modules/rollup/dist/es/shared/node-entry.js:24367:16)
    at async ModuleLoader.addModuleSource (file:///Users/rishi/work/threetwo/node_modules/rollup/dist/es/shared/node-entry.js:24567:30)
error Command failed with exit code 1.

https://github.com/rishighan/threetwo/pull/96/commits/74a9c4bdb0a5aa01353e1060644fbd2a323f1e46 should address this.


Add define plugin in allowed plugins

Hello!
I added define plugin in the allowedPlugins and here is why:
In vue.config.js I added definePlugin to pass some env variables (hosts, etc.), but since this plugin isn't allowed, my env variables became undefined. This can be solved by adding plugin in custom webpack config, specified in config/storybook/webpack.config.js, but keeping the same logic in two different places seems to be wrong.

By the way, what do you think about possibility to extend allowedPlugins manually by user? This is possible through custom plugin property in vue.config.js

I think that is probably the better way to do this.

Can you give me a sample repo where you are encountering the issue you are trying to fix?

Sure, will do it later this day.
Also, i can help with implementing this feature!

@pksunkara There is repo with example and steps to reproduce the issue
https://github.com/fapspirit/storybook_example

More information, https://github.com/storybooks/storybook/issues/4171

Oh, I see that the problem described in my example can be solved with .env files. However, my work use-cases can't be solved with dotenv package mostly because we need to pass JSON that is generated during the runtime, so we created our own solution for this purpose.
If there is no reason due to which we can't include define in the allowed plugins without breaking anything, can we return it back? Otherwise, we can still implement extending as a property from vue.config.js

I would like to do it as an option for storybook plugin.

we can still implement extending as a property from vue.config.js

I think you mean the same, right? (I don't recall the term property in vue-cli). I have also added CI and chromatic. So, please rebase your work and let's start testing this plugin.

@pksunkara I added support for extending allowed plugins through plugin options in vue.config.js. This solution extends default allowed plugins only with unique values passed by user

I don't know why the tests are not running.

Maybe tests are not running because of stale pull-request? I can create new one

Please do then. Thanks. I will add a test for this later on.

Can you also add a little bit of documentation?

Sure! Will do a new branch for new pull request after we finish discussion about implementation

Moved here #32


⚠ Quirk Club Argentina (API endpoint) has degraded performance

In c95da02, Quirk Club Argentina (API endpoint) (https://us-central1-quirkclub-dev.cloudfunctions.net/api/check/api) experienced degraded performance:

HTTP code: 200
Response time: 7276 ms

Resolved: Quirk Club Argentina (API endpoint) performance has improved in cd0b18c.