text:
Please, release smtp.cr v0.2.0

Hi @raydf I'm having an issue building amber projects https://github.com/crystal-lang/shards/issues/183
I found this shard version don't follow common version pattern because is using v0.1 instead of v0.1.0 so you need to release v0.2.0 to be able to fix my issue, please 😅
Also don't release v0.1.1 because doesn't work, seems that shards install logic is v0.1.1 < v0.1 so v0.2.0 is needed to be able to fix this issue
Remember to update both, shard.yml and src/version.cr before create a tag 👍

Thanks @faustinoaq

authors: faustinoaq raydf


text:
🛑 fan.eeda123 is down

In 1870b35, fan.eeda123 (https://fan.eeda123.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: fan.eeda123 is back up in 2f17320 after 17 minutes.

source: gharchive/issue

repo: rayliu/upptime

license: MIT

license_type: permissive

license_source: github-api


text:
doesnt show modal with react-navigation

doesnt show modal with react-navigation and some times show make a blink

Thank you for the feedback.
Can you please show or send me the code?
Also try to set the isNative prop to false, and see if this helps.
On 24 March 2017 at 12:58, TestTitans notifications@github.com wrote:

doesnt show modal with react-navigation and some times show make a blink
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/raynor85/react-native-modal-wrapper/issues/1, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AFjD9X_abA2RrpBpEDdjOujRBeKQaNe5ks5ro730gaJpZM4MoOSs
.

showOverlay={false}
isNative={false}
solve problem Thanks man.

Feel free to update the plugin to the last version as I made some
improvements that allow the user to customise more the modalWrapper content
when isNative={false}.
Thank you for using the plugin, any other feedbacks are appreciated.
Ruben
On 25 March 2017 at 14:37, TestTitans notifications@github.com wrote:

showOverlay={false}
isNative={false}
solve problem Thanks man.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/raynor85/react-native-modal-wrapper/issues/1#issuecomment-289215622,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFjD9T0R7A3obe0KW0AO_jqZNF9lVs9Lks5rpSabgaJpZM4MoOSs
.

license: mit

license_source: bigquery


text:
Make it possible to disable the cross pool dispatch optimization.

This optimization can lead to unexpected reentrancy when using multiple rayon threadpools.

I disagree with calling this work stealing an optimization -- as you note, there's a deadlock possibility without it. But reentrancy can cause its own deadlocks, so... it's complicated.
The other thing to to consider is whether this should really be a pool-wide option, versus a specific method for this behavior, perhaps blocking_install.

@khuey can you say a bit more about what you are doing that you want this option? I guess you are invoking thread_pool.join() or thread_pool.scope() from some other thread-pool? What is the behavior you ultimately expect?

I'm on thread pool A and I invoke .scope() on thread pool B. I expect this to be a blocking operation (like it would be if instead of being on thread pool A I was on a non-rayon thread). Because it's not, we keep processing jobs on my existing thread. In my case I have a RefCell in TLS that's borrowed across the ThreadPoolB.scope() call so a job that's processed re-entrantly might try to borrow the same RefCell and die.

I expect this to be a blocking operation (like it would be if instead of being on thread pool A I was on a non-rayon thread).

Maybe we could document this better? We currently say, "it will block until all tasks that have been spawned into s complete," but that's blocking in the imperative sense, that the scope won't return at all until then. It doesn't really say what else we may be doing within this thread.

In my case I have a RefCell in TLS that's borrowed across the ThreadPoolB.scope() call so a job that's processed re-entrantly might try to borrow the same RefCell and die.

This would be a hazard for any kind of blocking, even local to one thread pool. For example, if the second half of a join is stolen, the current thread will itself participate in work-stealing while it waits.
I mentioned in https://github.com/rayon-rs/rayon/issues/690#issuecomment-617895667 that we could have a "critical section" primitive that prevents work-stealing on the current thread. You would want that for the duration of your RefCell borrow, for example.

I don't quite understand the ref-cell scenario. Ref-cells can't be shared across threads, so you must have some master task that owns the ref-cell. How could a re-entrant task try to access it?

In other words, I believe that an task that we might execute while blocked here could also be stolen and executed by some other available thread if there were one -- am I missing something?

The RefCell lives in TLS.

I see, so you have some "per-thread" resources and you want to "truly block". OK.

Now that I understand the situation better, I think I agree with @cuviper that focusing on "cross-thread blocking" doesn't seem right -- this is really about wanting any sort of blocking to hold off on executing tasks. I guess that you're just very careful not to hold the ref-cell across any "intra-pool parallel operations", @khuey?
The "critical section" idea is interesting and seems somewhat more general -- I guess that there is never a need for a thread to do anything but block while it blocks, there should always be some thread still executing and making progress.
I could also imagine just configuring a thread-pool to have all blocking operations "just block" and not steal while blocking. I'm not sure @khuey if this would work for what you're doing or not.

I don't think we use any intra-pool parallel operations.

@khuey OK, I guess the idea is that each task in pool A is a "leaf task" that doesn't spawn any more tasks, except for some in other pools?

I would like to dust this off so I can finally stop using scoped-pool for one of the thread pools.

I could also imagine just configuring a thread-pool to have all blocking operations "just block" and not steal while blocking. I'm not sure @khuey if this would work for what you're doing or not.

Yes, I believe this would work for me. Would you take a PR that implements this?

source: gharchive/pull-request

authors: cuviper khuey nikomatsakis

repo: rayon-rs/rayon


text:
Update to raylib 4.2

This updates to raylib 4.2. There's still something wrong with custom_file_dialog though.

@RobLoach Nice! Thanks for the review! It was on my TODO list! I know it still requires some work...

license: Zlib


text:
fix textbox bug

Fixes bug in GuiTextBox if you type and the text buffer has non-zero data after the null terminator (which it might have!). Now adding a null terminator after the typed text.

Thanks for the fix @simonwashere!


text:
[rlgl] Poor support for disabled SUPPORT_QUADS_DRAW_MODE

Issue description
Some GLES drivers has no quads drawing mode support. And it makes sense because this drawing mode is being deprecated for 15 years or so. raylib has SUPPORT_QUADS_DRAW_MODE compiler flag turned on by default. Removing this flag simply makes raylib use RL_TRIANGLES in some routines instead of RL_QUADS. But RL_QUADS is still used in most routines and examples and checking SUPPORT_QUADS_DRAW_MODE or using RL_TRIANGLES is not a good solution. Instead rlgl must emulate quads using triangles if SUPPORT_QUADS_DRAW_MODE is disabled.
I guess it can be done easily by using triangles, same vertex buffer and different index buffer. For example one quad can be rendered using [0, 1, 2, 0, 2, 3] index buffer. I am not experienced in OpenGL so I am not sure it will work everywhere and needs no extensions.
Alternative solution is to add check to rlVertex3f and for each 4th vertex push last but two and last vertex, and only then push one specified in rlVertex3f. It will produce 50% more batches at bunnymark and slow rlVertex3f down even more, but I guess it doesn't depends on OpenGL version and extensions.
Environment
Hehe, well.
Guest: DESKTOP (GLFW, forked for custom platform), WASI sp1, custom WebAssembly embedder, OpenGL ES 2.0 proxied to host's OpenGL ES, no extensions.
Host: Linux, OpenGL ES 3.2 Mesa, AMD Radeon Vega 8 Graphics (radeonsi, raven, LLVM 17.0.6, DRM 3.57, 6.8.0-45-generic).
Issue Screenshot
Here is one for core_2d_camera.c. DrawTexturePro, used by rtext, uses RL_QUADS only, so text is missing.

Code Example
Reproduces on most examples. Adding checks for SUPPORT_QUADS_DRAW_MODE to more routines in rshapes and rtextures, of cause, fixes most issues, but it is not the most flexible solution.

@Destructor17 raylib only uses GL_QUADS when compiled for OpenGL 1.1, in that case is a user requirement. rlgl uses indexed triangles for RL_QUADS. At the moment there are no plans to redesign all the functions to use RL_TRIANGLES, actually, I'd prefer to do it the other way round.


text:
[build] Raspberry Pi build fails: "undefined reference to IsFileDropped'/GetDroppedFiles'/`ClearDroppedFiles'"

Here's the command line session:
pi@raspberrypi:/clocks $ git clone https://github.com/raysan5/raylib.git
Cloning into 'raylib'...
remote: Counting objects: 13665, done.
remote: Compressing objects: 100% (10/10), done.
remote: Total 13665 (delta 3), reused 7 (delta 3), pack-reused 13651
Receiving objects: 100% (13665/13665), 220.22 MiB | 7.55 MiB/s, done.
Resolving deltas: 100% (9365/9365), done.
Checking connectivity... done.
Checking out files: 100% (770/770), done.
pi@raspberrypi:/clocks $  sudo apt-get install libopenal1 libopenal-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
libopenal-dev is already the newest version.
libopenal1 is already the newest version.
libopenal1 set to manually installed.
0 upgraded, 0 newly installed, 0 to remove and 110 not upgraded.
pi@raspberrypi:/clocks $ cd raylib/
pi@raspberrypi:/clocks/raylib $ cd examples/
pi@raspberrypi:/clocks/raylib/examples $ make PLATFORM=PLATFORM_RPI
gcc -o core/core_basic_window core/core_basic_window.c -O1 -s -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces -std=gnu99 -I. -I../release/include -I../src -I../src/external -I/opt/vc/include -I/opt/vc/include/interface/vmcs_host/linux -I/opt/vc/include/interface/vcos/pthreads -L. -L../release/libs/rpi -L../src -L/opt/vc/lib -lraylib -lbrcmGLESv2 -lbrcmEGL -lpthread -lrt -lm -lbcm_host -ldl -DPLATFORM_RPI
gcc -o core/core_input_keys core/core_input_keys.c -O1 -s -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces -std=gnu99 -I. -I../release/include -I../src -I../src/external -I/opt/vc/include -I/opt/vc/include/interface/vmcs_host/linux -I/opt/vc/include/interface/vcos/pthreads -L. -L../release/libs/rpi -L../src -L/opt/vc/lib -lraylib -lbrcmGLESv2 -lbrcmEGL -lpthread -lrt -lm -lbcm_host -ldl -DPLATFORM_RPI
gcc -o core/core_input_mouse core/core_input_mouse.c -O1 -s -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces -std=gnu99 -I. -I../release/include -I../src -I../src/external -I/opt/vc/include -I/opt/vc/include/interface/vmcs_host/linux -I/opt/vc/include/interface/vcos/pthreads -L. -L../release/libs/rpi -L../src -L/opt/vc/lib -lraylib -lbrcmGLESv2 -lbrcmEGL -lpthread -lrt -lm -lbcm_host -ldl -DPLATFORM_RPI
gcc -o core/core_mouse_wheel core/core_mouse_wheel.c -O1 -s -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces -std=gnu99 -I. -I../release/include -I../src -I../src/external -I/opt/vc/include -I/opt/vc/include/interface/vmcs_host/linux -I/opt/vc/include/interface/vcos/pthreads -L. -L../release/libs/rpi -L../src -L/opt/vc/lib -lraylib -lbrcmGLESv2 -lbrcmEGL -lpthread -lrt -lm -lbcm_host -ldl -DPLATFORM_RPI
gcc -o core/core_input_gamepad core/core_input_gamepad.c -O1 -s -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces -std=gnu99 -I. -I../release/include -I../src -I../src/external -I/opt/vc/include -I/opt/vc/include/interface/vmcs_host/linux -I/opt/vc/include/interface/vcos/pthreads -L. -L../release/libs/rpi -L../src -L/opt/vc/lib -lraylib -lbrcmGLESv2 -lbrcmEGL -lpthread -lrt -lm -lbcm_host -ldl -DPLATFORM_RPI
gcc -o core/core_random_values core/core_random_values.c -O1 -s -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces -std=gnu99 -I. -I../release/include -I../src -I../src/external -I/opt/vc/include -I/opt/vc/include/interface/vmcs_host/linux -I/opt/vc/include/interface/vcos/pthreads -L. -L../release/libs/rpi -L../src -L/opt/vc/lib -lraylib -lbrcmGLESv2 -lbrcmEGL -lpthread -lrt -lm -lbcm_host -ldl -DPLATFORM_RPI
gcc -o core/core_color_select core/core_color_select.c -O1 -s -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces -std=gnu99 -I. -I../release/include -I../src -I../src/external -I/opt/vc/include -I/opt/vc/include/interface/vmcs_host/linux -I/opt/vc/include/interface/vcos/pthreads -L. -L../release/libs/rpi -L../src -L/opt/vc/lib -lraylib -lbrcmGLESv2 -lbrcmEGL -lpthread -lrt -lm -lbcm_host -ldl -DPLATFORM_RPI
gcc -o core/core_drop_files core/core_drop_files.c -O1 -s -Wall -std=c99 -D_DEFAULT_SOURCE -Wno-missing-braces -std=gnu99 -I. -I../release/include -I../src -I../src/external -I/opt/vc/include -I/opt/vc/include/interface/vmcs_host/linux -I/opt/vc/include/interface/vcos/pthreads -L. -L../release/libs/rpi -L../src -L/opt/vc/lib -lraylib -lbrcmGLESv2 -lbrcmEGL -lpthread -lrt -lm -lbcm_host -ldl -DPLATFORM_RPI
/tmp/ccMdWg4P.o: In function main': core_drop_files.c:(.text+0x3c): undefined reference to IsFileDropped'
core_drop_files.c:(.text+0x4c): undefined reference to GetDroppedFiles' core_drop_files.c:(.text+0x1c8): undefined reference to ClearDroppedFiles'
collect2: error: ld returned 1 exit status
Makefile:421: recipe for target 'core/core_drop_files' failed
make:  [core/core_drop_files] Error 1
pi@raspberrypi:/clocks/raylib/examples $

Ouch! You're right, those functions are not available on RPI... actually that example shouldn't be compiled on RPI.

Exposed symbols on RPI, despite file-dropping not being functional on RPI native screen rendering. Implemented in commit https://github.com/raysan5/raylib/commit/ada6668b2458f0e58e588611b2e0d70a90970827.


text:
[rtextures] implemented fill color TODO in ImageResizeCanvas()

ImageResizeCanvas() accepts a fill color, that was so far unused, with a TODO to implement it.
This is a fairly simple implementation that fills in the entire canvas, with a minor optimization to copy entire rows once the first one is filled.
The implementation is similar to ImageClearBackground(), this could possibly be unified in the future.
I was unsure about the desired level of code commenting, so I opted for extensive comments, in line with the contributing guide.
Tested on Linux:

build
functionality
with valgrind (for invalid read/writes)

I could also upgrade this to either use ImageClearBackground() or to not fill the pixels that will be occupied by the old image's content.

@LievenPetersen Thanks for the review!

I could also upgrade this to either use ImageClearBackground() or to not fill the pixels that will be occupied by the old image's content.

I'm thinking about that... actually, if image canvas is smaller than current canvas, it wouldn't be needed to fill anything... but I also think if the filling process is fast enough to skip that sequence of checks with offset/size...
I'm merging for now. If it can be optimized in the future, it can be reviewed.


text:
Have optoins for finetuning rbenv init

A rbenv init does for 4 different things. Can it be possible to do all 4 seperately. For example some people like me want set up path only once, so .profile should be used. But rbenv shell functions have to be in .*rc file.

You don't have to use rbenv init at all; it's entirely optional. You only need to manually prepend ~/.rbenv/shims to the PATH if you're going to skip the rbenv init step.

repo: rbenv/rbenv


text:
irb insert control characters when using del key on OSX

Hi,
I am not sure if this is the correct repo to create this issue.
Build env:

OSX Ventura M1
Installation steps followed with brew

Versions that I encountered with this problem:

3.1.2
3.1.3

Problem:
Using del home end keys in irb leads to control character output: ^[[H^[[F^[[3~
Expectation:
Jump to beginning/end of line, delete character behind cursor.
What I tried:

Figure it out on my own with google and brain
fresh reinstallation (removing readlines, rbenv and ruby-build from brew. Removing all ruby version from rbenv. Start fresh)
Change terminal (iterm2 -> terminal)

Why I think this might be a bug in rbenv/ruby-build:

preinstalled OSX ruby works fine in all constellations
Problem does not exists in SSH sessions on a linux host, where I use rbenv
Basically never encountered it somewhere else

Seems to be an IRB issue: https://github.com/ruby/irb/issues/330

Thanks for the pointer. Closing as not an issue with ruby-build.

authors: KervyN mislav


text:
Cannot load such file "script/../config/boot'

I just moved from rvm`` torbenv```. I needed to install a newer version of ruby and I wanted to insulate the ruby that was running for a legacy Rails 2.3.15 application I have on this server.
I have had that legacy app working with Bundler for 2 years.
After reinstalling ruby, my Rails application refuses to load. I ended up installing a newer version of Ruby (2.1.5) since it was a nightmare trying to get any version of 1.8.7 (openssl issues) or 1.9.3 installed via rbenv. I don't think this is a shortcoming of rbenv, just configuration changes over the years.
Anyway, this 2.1.5 ruby version absolutely refuses to load the config/boot.rb file. Just flat out says it can't load it. Very unhelpful.
The require line that is failing in script/console:
require File.dirname(__FILE__) + '/../config/boot'
/home/myapp/.rbenv/versions/2.1.5/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- script/../config/boot (LoadError)

At the top of this script/console file is:
#!/usr/bin/env ruby

Could that somehow be causing a problem?

In newer versions of Ruby, the current directory is no longer in $LOAD_PATH by default. That means that using require to load files relative to the current directory (such as script/../config/boot which expands to simply config/boot) won't work.
Your alternatives are to edit $LOAD_PATH to include the current directory (by e.g. $LOAD_PATH << "."), use require_relative "../config/boot" in script/console, or just ditch script/console and use rails console which is the new way of starting the console in newer Rails versions.

It's not rbenv problem. Rails 2.3 (already EOL) do not support Ruby 1.9 later.

@hsbt Ah yes, thanks for reminding me: rails console is only a thing since Rails 3.
@HuckyDucky It shouldn't be impossible to install an older version of Ruby on your computer.

It's probably not impossible, but it's excruciatingly painful on RedHat. Lots of known issues with compiling against RH's OpenSSL with Ruby 1.8.7. I just have to last a little longer with this old app during the rewrite.
It's silly, but I was able to run this using:
./script/console

instead of just calling:
/script/console

Works like a champ.

h

authors: HuckyDucky empoweredev hsbt mislav


text:
rbenv failed to install 1.8.7-p375 on ubuntu16.04 LTS

Hello everyone,
I have to use ruby1.8.7-p375 on ubuntu16.04, when I run it, I got build failed error.
root@ad3426142aa2:/# rbenv install 1.8.7-p375
Checking out http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_8_7...
Installing ruby-1.8.7-p375...
BUILD FAILED (Ubuntu 16.04 using ruby-build 20151028)
Inspect or clean up the working tree at /tmp/ruby-build.20180514091016.378
Results logged to /tmp/ruby-build.20180514091016.378.log
Last 10 log lines:
A    ruby-1.8.7-p375/ChangeLog
A    ruby-1.8.7-p375/mkconfig.rb
A    ruby-1.8.7-p375/ia64.s
A    ruby-1.8.7-p375/inits.c
A    ruby-1.8.7-p375/version.h
A    ruby-1.8.7-p375/eval.c
U   ruby-1.8.7-p375
44351
/tmp/ruby-build.20180514091016.378/ruby-1.8.7-p375 /tmp/ruby-build.20180514091016.378 /
/usr/bin/ruby-build:  521: autoconf:
I tried to install some packages, but it seems like not works. Wish anyone can help me!
Thank u all.

That is a very old ruby and is unlikely to build without patches. See https://github.com/rbenv/ruby-build/wiki#troubleshooting for known tips/workarounds for old ruby versions.
1.8.7 is almost entirely unsupported these days, you may need to adjust 1.9.3 SSL patches yourself to apply to 1.8.7 if you want/need SSL functionality.
It will also be easier building ruby from its official tarball without rbenv/ruby-build in the way. If and when that works the next step would be getting 1.8.7 built with rbenv.

@p-mongo Thank you for your advise! I'm doing some thing about natural language processing, need use old tool, that tool require ruby-1.8.7 . As your said, openssl is the reason. So I chose to install the ruby-1.8.7 directly and solve the problem.
Thank your very much!

repo: rbenv/ruby-build


text:
MSPF-64: added explicit type generation for async method calls

This commit will added explicit namespace for generated types in async method call for java thrift generator.

:shipit:

repo: rbkmoney/thrift


text:
Use Python3 for test_scripts

Update test_scripts to use Python3 instead of FindPythonInterp (deprecated since CMake 3.12). Ignore Python2 since its support's gonna dropped soon also.

The travis image currently in use has cmake 3.9
I am in favor of upgrading to a more recent version of travis, your help would be welcome.

NIce work! Thanks!

authors: rbock uyha


text:
Seeing a segfault when running mapper/examples/gaussian.json

Looks like it is segfaulting somehow on creating consts.

Fixed by #473


text:
Align SRC and DOCS Media Player Events

Can You please check and align the Events documented and effectivly fired by the MediaPlayer?
https://webplatformforembedded.github.io/Lightning-SDK/#/plugins/mediaplayer?id=events
For example I've used $mediaplayerProgress but seems that is documented ad $mediaplayerTimeupdate.
Can I suppose to use all the $mediaplayer{Event} that I find in the class in master?

Fixed.

repo: rdkcentral/Lightning-SDK


text:
SMARTS roundtrip failure

I just came across a SMARTS that reads fine with MolFromSmarts, but then MolToSmarts fails:
>>> m = Chem.MolFromSmarts('[C;H1&$(C([#6])[#6]),H2&$(C[#6])]')
>>> print(Chem.MolToSmarts(m))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
RuntimeError: unidentifiable C++ exception

It seems to be something to do with the branching in the first recursive part. DescribeQuery looks fine:
>>> print(m.GetAtoms()[0].DescribeQuery())
AtomAnd
  AtomType 6 = val
  AtomOr
    AtomAnd
      AtomHCount 1 = val
      RecursiveStructure val in ()
    AtomAnd
      AtomHCount 2 = val
      RecursiveStructure val in ()

MolToSmarts also works fine if I rewrite it as [$([CH1]([#6])[#6]),$([CH2][#6])] (I think this is equivalent).

RDKit Version: 2018.09.1
Platform: Linux

Another example that seems to have a similar problem: [N;$(NC),H2&$(NC[C,N])]
Fails as soon as the [C,N] is introduced in the second recursive part. Likewise can be fixed by bringing the H count inside the $().

Wow, great catch. I'm amazed this has never come up before.
The failure is happening here: https://github.com/rdkit/rdkit/blob/master/Code/GraphMol/SmilesParse/SmartsWrite.cpp#L54
I will fix it (and get rid of the fact that it's raising an exception by throwing a char *, that's gross)

repo: rdkit/rdkit


text:
Python version problem

Configuration:

RDKit Version: latest from conda
Operating system: linux Manjaro
Python version (if relevant): 3.8
Are you using conda? yes
If you are using conda, which channel did you install the rdkit from? rdkit

Description:
Installation in jupyter notebook with comand:
! conda install -c rdkit rdkit -y

fails with message:

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:

Specifications:

  - rdkit -> python[version='2.6.*|2.7.*|3.5.*|3.6.*|>=2.7,<2.8.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0|>=3.5,<3.6.0a0|3.4.*']

Your python: python=3.8

Are there reasons why python 3.8 and higher are uncompatible with RDKit? If no, should this be fixed by creating new build for python 3.8-3.9

It’s best if you use -c conda-forge.
On Wed, 5 Jan 2022 at 19:36, Glubshev Artem @.***>
wrote:

Configuration:

RDKit Version: latest from conda
Operating system: linux Manjaro
Python version (if relevant): 3.8
Are you using conda? yes
If you are using conda, which channel did you install the rdkit
from? rdkit

Description:
Installation in jupyter notebook with comand:
! conda install -c rdkit rdkit -y
fails with message:
UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:
Specifications:

rdkit -> python[version='2.6.|2.7.|3.5.|3.6.|>=2.7,<2.8.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0|>=3.5,<3.6.0a0|3.4.*']

Your python: python=3.8
Are there reasons why python 3.8 and higher are uncompatible with RDKit?
If no, should this be fixed by creating new build for python 3.8-3.9
—
Reply to this email directly, view it on GitHub
https://github.com/rdkit/rdkit/issues/4855, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACGF2FQQAKHHMWQ6LFBWIQ3UUSMTLANCNFSM5LKVZ76A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

--
David Cosgrove
Freelance computational chemistry and chemoinformatics developer
http://cozchemix.co.uk

So, is rdkit channel deprecated?

So, is rdkit channel deprecated?

We still use it to make beta builds available, but I no longer do production builds there.

I'm closing this because it looks like the question is answered. Please reopen if necessary.

FYI, at least one place where the deprecated rdkit channel is referenced for installation is here where it specifies to run conda install -c rdkit rdkit-postgresql
I found after installing via conda install -c conda-forge rdkit that the older v2020.09.1.0 version was installed.
To upgrade to the most recent 2021.09.5 version, I needed to run  conda update -c conda-forge rdkit
So make sure you are both installing and updating the package if installing through conda.

authors: DavidACosgrove SomeAnonimCoder cpoptic greglandrum


text:
Dependency updates for 2.3.0

Description

Dependency updates for 2.2.2
Motivation and Context

How has this been tested?

Screenshots (if appropriate)

This needs a rebase?
These files with merge conflicts should not be part of this PR:

rdmo/projects/assets/js/api/ProjectsApi.js
rdmo/projects/assets/js/components/helper/ProjectFilters.js

This needs a rebase?
These files with merge conflicts should not be part of this PR:
* rdmo/projects/assets/js/api/ProjectsApi.js

* rdmo/projects/assets/js/components/helper/ProjectFilters.js

yes, this one was rebased on the 2.2.2 but now it will go only in the 2.3.0, so far I only switched the target branch of this PR

rebased to 2.3.0 without any changes

rebased (interactive) again to 2.3.0

authors: MyPyDavid afuetterer

repo: rdmorganiser/rdmo


text:
🛑 APData 下载存储服务器 is down

In efd51d1, APData 下载存储服务器 ($APDATA_HEALTH) was down:

HTTP code: 502
Response time: 605 ms

Resolved: APData 下载存储服务器 is back up in ad04bd2 after 11 minutes.


text:
🛑 RDP Archive is down

In 5a9806c, RDP Archive (https://archive.utools.club) was down:

HTTP code: 0
Response time: 0 ms

Resolved: RDP Archive is back up in ac0fe58.

repo: rdpupptime/upptime


text:
Add MirageJs to mock API in front-end

Add MirageJs to allow for a faster front-end development.

@jpmarques66 I believe this is already done - https://github.com/reach4help/reach4help/pull/202? If not please reopen the issue.


text:
SEO is not working

Before opening a new issue, please take a moment to review our community guidelines to make the contribution process easy and effective for everyone involved.
Description
Meta tags are not fetched by server-side rendering
Steps to reproduce

Open https://metatags.io/
Enter URL[(https://react-boilerplate.github.io/react-boilerplate-cra-template/)]

Expected behavior
Tag should be Home page - React App
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.

Versions

react-boilerplate-cra-template:
Node/NPM:
Browser:

fixed in 43657d6


text:
Error: Can't resolve 'child_process' when trying to use stripe-node server side

Hello,
When trying to install stripe for the server side code,
npm install --save stripe
npm run build:dll

I got this npm error :
ERROR in ./node_modules/stripe/lib/stripe.js
Module not found: Error: Can't resolve 'child_process' in '/home/louis/scotland2018/node_modules/stripe/lib'

Would you know what to do ? I searched all over the internet but there does not seem to be any solution. I checked the other opened issues about this subject but I did not find a solution. I want to use stripe-node server side only (I got that it should not be use client side and that Stripe.js is for client side). But still, why can't I build the dependencies ?
Note. I added stripe to the excluded modules of dllPlugin so that it excludes stripe which is not intended for the browser
Thank you !

Where did you added it? In the JSON? Package.json?

In the webpack config.js file :
dllPlugin: {
    defaults: {
      exclude: [
        'stripe', ..........
      ],

Ok, thank's to your comment, just saw there was the dll Plugin in the Package.json file ... And now it works! Thank you :)

@ldevalbray i am getting the same issue in my react app build with nextJs. Do i need to add that json code in package.json or webpack config ?

It should be added to the webpack config file

authors: csantiago132 ldevalbray mira-thakkar

repo: react-boilerplate/react-boilerplate


text:
Hide tab from TabBar

this enables an individual tab to show or hide in the tabbar
const TabBar = TabNavigator( {

  Catalogue: {
		screen: Catalog,
		navigationOptions: {
          tabBarLabel:"Catalog",
          tabBarIcon: ({ tintColor }) => <Image source={require('./img/icon.png')} style={[styles.icon, {tintColor: tintColor}]} />
		}
	},
  Library: {
		screen: Library,
		navigationOptions: {
          tabBarLabel:"Library",
          tabBarIcon: ({ tintColor }) => <Image source={require('./img/icon.png')} style={[styles.icon, {tintColor: tintColor}]} />
		}
	}

	},{
    key: 'Catalogue',
    initialRouteName: 'Catalogue',
    tabBarComponent: TabBarBottom,
    tabBarPosition: 'bottom',
    tabBarOptions: {
        hideIndex : [ 1 ], // << == this option hides Library from the tab, but content still persists
        showLabel: true,
        showIcon: true
    },
})

usefull to have an instance running without lost of state or instance, and also still show its content by navigate

A few things in regards to this

Working based off of indexes is confusing. I think there could be a better way to implement this. Perhaps it's an option in navigationOptions instead?
Make sure to make any changes to TabBarTop as well
Documentation for new features is required.

I'm not sure such feature is worth complicating the API of TabNavigator. What exactly is your use case? Does this solve a common problem?

Hi, actually i was proposing this at first in order to have a hidden view ( no tab ) , but instance will be kept through cycles ( no unmount etc ).
i finally ended by implementing my own logic in stackNavigator to retain instances, so this pull request can be closed.

Check my answer here:
https://stackoverflow.com/questions/52362166/react-navigation-hide-one-tab/57515137#57515137

authors: PerspectivesLab spencercarli suarezluis vonovak

repo: react-community/react-navigation


text:
[Android] Can someone show an example of blurring something that's NOT an ?

The example works great e.g.:
class LockAndroid extends Component {
  constructor() {
    super();

    this.state = {
      viewRef: 0,
    };
  }

  imageLoaded() {
  this.setState({viewRef: findNodeHandle(this.refs.backgroundImage)})
}

  render() {
    return (
      <Image
        source={require('./assets/filmstrip-heart.png')}
        style={styles.container}
        ref={'backgroundImage'}
        onLoadEnd={this.imageLoaded.bind(this)}>
        <BlurView
          blurRadius={15}
          downsampleFactor={5}
          overlayColor={'rgba(255, 255, 255, .25)'}
          style={styles.blurView}
          viewRef={this.state.viewRef}/>
        <Text style={styles.welcome}>{`Blur component`}</Text>
      </Image>
    );
  }
}

but I cannot seem to figure out how to blur something that's NOT an <Image />.
When I try something like this to use a <View />:
class LockAndroid extends Component {
  constructor() {
    super();

    this.state = {
      viewRef: 0,
    };
  }

  onLayout() {
    this.setState({viewRef: findNodeHandle(this.refs.backgroundView)})
  }

  render() {
    return (
      <View
        style={styles.container}
        ref={'backgroundView'}
        onLayout={this.onLayout.bind(this)}>
        <BlurView
          blurRadius={15}
          downsampleFactor={5}
          overlayColor={'rgba(255, 255, 255, .25)'}
          style={styles.blurView}
          viewRef={this.state.viewRef}/>
        <Text style={styles.welcome}>{`Blur component`}</Text>
      </View>
    );
  }
}

It just crashes...
What is the proper onLoadEnd equivalent for a <View />? I also tried setting viewRef in componentDidMount, but didn't work either. It may also even be a styling issue.
Just need a good example! Thanks.

This worked for me. Mostly taken from the example/base folder.
class Modal extends React.Component {
    constructor(props) {
        super(props);
        this.state = { viewRef: null };
    }
    render() {
        return (
            <View style={styles.container}>
                <View
                    ref="backgroundWrapper"
                    style={[styles.absolute]}
                    onLayout={
                        Platform.select({
                            ios: () => this.setState({ viewRef: findNodeHandle(this.refs.backgroundWrapper) }),
                            android: () => InteractionManager.runAfterInteractions(() => setTimeout(() =>
                                this.setState({ viewRef: findNodeHandle(this.refs.backgroundWrapper) }), 20))
                        })
                    }
                >
                    {this.props.children}
                </View>
                {(this.state.viewRef || Platform.OS === "ios") &&
                <BlurView
                    style={[styles.absolute]}
                    viewRef={this.state.viewRef}
                    blurType="dark"
                    {...Platform.select({
                        ios: {
                            blurAmount: 3,
                            blurType: "dark"
                        },
                        android: {
                            // blurAmount: 31,
                            blurRadius: 9,
                            downsampleFactor: 9,
                        }
                    })}
                />}
                <View><Text>MainContent</Text></View>
            </View>
        );
    }
}

authors: booboothefool ericwooley


text:
Create a macOS implementation of NetInfo + macOS example app and e2e tests

Overview
This change adds a macOS implementation of NetInfo.  It shares the same source as the IOS implementation.
The macOS react-native implementation is an "out-of-tree" platform from the core react-native repo which contains only iOS and Android implementations. Having two react-native implementations in node_modules creates some challenges for the metro bundler. The metro issue is being discussed here https://react-native-community/discussions-and-proposals#182.  In lieu of an "official" solution I'm using a workaround involving react-native.config.js and a pair of metro.config.js files for the two react-native implementations. The identical approach was used for the macOS implementation in the async-storage and react-native-webview.
Test Plan
A native macOS example app was added parallel to the iOS and Android example apps. The iOS and Android e2e tests were implemented using detox: but detox has no support for macOS, so the macOS tests were implemented as Xcode XCUITests. The same detox JavaScript test logic was ported into XCUITest Object C.   Circle CI does not support macOS UI tests, so a GitHub Actions CI test was added to run the macOS e2e tests.
The macOS e2e tests can be executed via script:
$ yarn install
$ yarn test:e2e:macos

Or the example app can be opened in Xcode and launched. However, due to the "out-of-tree" platform issues described above, you must manually launch the metro bundler:
$ open example/macos/NetInfoExample.xcodeproj # open the example in xcode
$ yarn start:macos                            # start metro bundler in react-native-macos mode

👋 Thanks for doing this. It sounds good. Can you let me know when you're finished making changes and it is ready for review?

👋 Thanks for doing this. It sounds good. Can you let me know when you're finished making changes and it is ready for review?

Thanks.   It is ready for review.   The last few commits have been me trying in vain to get the GitHub Actions to activate.   I'll make a separate branch to continue trying to get it working.    The build and e2e tests work on all of my macs, but there's something odd happening in the GA VMs.

This looks great! Thanks for the great contribution!
I'm going to merge this in now so people can begin using it, however, there is an issue where the connection type is incorrectly being reported at ethernet when it should be wifi. This is because it's using assumptions which are true for the AppleTV, but likely not for macOS. I'm ok to release this now so you can being using it without forking the library, however, a PR to fix this issue would be useful.
The problem code is here: https://github.com/react-native-community/react-native-netinfo/blob/423fa623ee71d984cdf88b414d04d6bf8306cee0/ios/RNCConnectionState.m#L75-L90

authors: matt-oakes tom-un


text:
Update obsolete compile to implemenation

Hi, as React native 0.56.0 is released with MAJOR android changes such as:
-Gradle 3.5.1
-Compile using Android SDK 26
-Google Maven repo
-etc
more about Change log, specially of Android Here, https://github.com/react-native-community/react-native-releases/blob/master/CHANGELOG.md#android-projects-are-now-compiled-using-the-android-26-sdk
and https://github.com/react-native-community/react-native-releases/blob/master/CHANGELOG.md#android-specific-changes
Aslo as Per Google new "Google Play's target API level requirement", mentioned here  https://developer.android.com/distribute/best-practices/develop/target-sdk

Google Play will require that new apps target at least Android 8.0 (API level 26) from August 1, 2018, and that app updates target Android 8.0 from November 1, 2018.

It's clear that Android would be moving to new Gradle and new SDK changes, Thus creating a new type of error that is:
"Configuration 'compile' is obsolete and has been replaced with 'implementation' or 'Api'"
more about the Old and new configuration please see this https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration?utm_source=android-studio#new_configurations
at the heading of "Use the new dependency configurations"
Therefore, all old "compile" should be now "implementation" or "provided" should be "compileOnly"
I have tested the with "compile" and "implementation" in my current release ready product and also by "renaming" "compile" to "implementation".
ext {
    buildToolsVersion = "26.0.3"
    minSdkVersion = 16
    compileSdkVersion = 26
    targetSdkVersion = 26
    supportLibVersion = "26.1.0"
}

Also tested with higher andorid SDK configs such as of below:
ext {
    buildToolsVersion = "27.0.3"
    minSdkVersion = 19
    compileSdkVersion = 27
    targetSdkVersion = 27
    supportLibVersion = "27.1.1"
}

so SDK 27 was also compiled successully. test on Android phone with ADK 23 all looks good. Thus, react-native-svg was working just fine as intended. thank you so much for this package.
Therefore, Please would it be possible to merge as i am sure many new projects and old one are going to update specially Gradle and SDK as of Google new requirements.
related mention of Upgrading issue mention here https://github.com/facebook/react-native/issues/20273#issuecomment-405959030
Moreover, if someone still have any issue after upgrading everything successfully, then he should use following in build.gradle under andorid/build.gradle

subprojects {
    afterEvaluate {project ->
        if (project.hasProperty("android")) {
            android {
                compileSdkVersion 27
                buildToolsVersion '27.0.3'
                supportLibVersion = "27.1.1"
            }
        }
    }
}

v6.5.0 published @yeomann

authors: msand yeomann

repo: react-native-community/react-native-svg


text:
Error when using Exoplayer: Multiple dex files define Landroid/support/v4/app/NavUtilsJB

I have a Windows 10 machine. I setup my environment and created a React Native project where native code will be used per https://facebook.github.io/react-native/docs/getting-started.html
Then I ran:
npm i -S react-native-video
react-native link

At this point I can run the project, but I couldn't get my video working. It was mentioned that I might have more luck with ExoPlayer, so  I made the three edits mentioned in this comment: https://github.com/react-native-community/react-native-video/pull/426#issuecomment-272810170
At this point, I can no longer compile the project. I believe the germane bit is:
Dex: Error converting bytecode to dex:WithDexForDebug
Cause: com.android.dex.DexException: Multiple dex files define Landroid/support/v4/app/NavUtilsJB;
    UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v4/app/NavUtilsJB;
      at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
        at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
   at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
   at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
       at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
    at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502)
     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334)
 at com.android.dx.command.dexer.Main.run(Main.java:277)
        at com.android.dx.command.dexer.Main.main(Main.java:245)
       at com.android.dx.command.Main.main(Main.java:106)

I'm a webmonkey with little Java experience, this SO post seems to indicate that a similar issue should be fixed in the library - let me know if that's not case!
I ran gradlew installDebug --stacktrace to get more output, it is as follows:
Running dex in-process requires build tools 23.0.2.
For faster builds update this project to use the latest build tools.
Dex: Error converting bytecode to dex:WithDexForDebug
Cause: com.android.dex.DexException: Multiple dex files define Landroid/support/v4/app/NavUtilsJB;
    UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v4/app/NavUtilsJB;
      at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
        at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
   at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
   at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
       at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
    at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:502)
     at com.android.dx.command.dexer.Main.runMonoDex(Main.java:334)
 at com.android.dx.command.dexer.Main.run(Main.java:277)
        at com.android.dx.command.dexer.Main.main(Main.java:245)
       at com.android.dx.command.Main.main(Main.java:106)

:app:transformClassesWithDexForDebug FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException

* Try:
Run with --info or --debug option to get more log output.

* Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:transformClassesWithDexForDebug'.
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:69)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)
        at org.gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter.java:35)
        at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:66)
        at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
        at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
        at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
        at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:203)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:185)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:66)
        at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
        at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
        at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:110)
        at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
        at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)
        at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)
        at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)
        at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)
        at org.gradle.initialization.DefaultGradleLauncher$4.run(DefaultGradleLauncher.java:153)
        at org.gradle.internal.Factories$1.create(Factories.java:22)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:53)
        at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:150)
        at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32)
        at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:98)
        at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:92)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:91)
        at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:63)
        at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:92)
        at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:83)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:99)
        at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)
        at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:48)
        at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
        at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:81)
        at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:46)
        at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:51)
        at org.gradle.launcher.exec.DaemonUsageSuggestingBuildActionExecuter.execute(DaemonUsageSuggestingBuildActionExecuter.java:28)
        at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:43)
        at org.gradle.internal.Actions$RunnableActionAdapter.execute(Actions.java:173)
        at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:239)
        at org.gradle.launcher.cli.CommandLineActionFactory$ParseAndBuildAction.execute(CommandLineActionFactory.java:212)
        at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:35)
        at org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)
        at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)
        at org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)
        at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:205)
        at org.gradle.launcher.cli.CommandLineActionFactory$WithLogging.execute(CommandLineActionFactory.java:169)
        at org.gradle.launcher.Main.doAction(Main.java:33)
        at org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45)
        at org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:55)
        at org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:36)
        at org.gradle.launcher.GradleMain.main(GradleMain.java:23)
        at org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:30)
        at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:127)
        at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
Caused by: java.lang.RuntimeException: com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException
        at com.android.builder.profile.Recorder$Block.handleException(Recorder.java:54)
        at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:158)
        at com.android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.java:173)
        at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:75)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.doExecute(AnnotationProcessingTaskFactory.java:245)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:221)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$IncrementalTaskAction.execute(AnnotationProcessingTaskFactory.java:232)
        at org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory$StandardTaskAction.execute(AnnotationProcessingTaskFactory.java:210)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:80)
        at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:61)
        ... 60 more
Caused by: com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException
        at com.android.build.gradle.internal.transforms.DexTransform.transform(DexTransform.java:443)
        at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:178)
        at com.android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.java:174)
        at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:156)
        ... 68 more
Caused by: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException
        at com.android.builder.core.DexByteCodeConverter.dexOutOfProcess(DexByteCodeConverter.java:210)
        at com.android.builder.core.DexByteCodeConverter.runDexer(DexByteCodeConverter.java:159)
        at com.android.builder.core.DexByteCodeConverter.convertByteCode(DexByteCodeConverter.java:146)
        at com.android.builder.core.AndroidBuilder.convertByteCode(AndroidBuilder.java:1386)
        at com.android.build.gradle.internal.transforms.DexTransform.transform(DexTransform.java:432)
        ... 71 more
Caused by: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException
        at com.android.builder.core.DexByteCodeConverter.dexOutOfProcess(DexByteCodeConverter.java:206)
        ... 75 more
Caused by: java.lang.UnsupportedOperationException
        at com.android.ide.common.process.ProcessInfoBuilder$JavaProcessInfoImpl.getExecutable(ProcessInfoBuilder.java:349)
        at com.android.build.gradle.internal.process.GradleProcessResult.buildProcessException(GradleProcessResult.java:74)
        at com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:49)
        at com.android.builder.core.DexByteCodeConverter.lambda$dexOutOfProcess$1(DexByteCodeConverter.java:196)

BUILD FAILED

Total time: 1 mins 11.125 secs

Any guidance would be appreciated!

try adding multiDexEnabled true to your app/build.gradle defaultconfig. heres what mine look like
android {
    compileSdkVersion 26
    buildToolsVersion '26.0.1'

    defaultConfig {
       ...
        minSdkVersion 16
        targetSdkVersion 26
        vectorDrawables.useSupportLibrary = true
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
        ndk {
            abiFilters "armeabi-v7a", "x86"
        }
    }

The fix from https://github.com/react-native-community/react-native-video/issues/692#issuecomment-319377595 handles this for me. It doesn't appear to be an issue with the latest ExoPlayer in 2.1.1

authors: JKonTiki chrisahardie cobarx


text:
Make menu props driven

It should be possible for the menu to handle isOpen change so it's possible to keep its state in e.g. Redux store and use actions instead to operate on its behaviour.
I think its similar to #76 but it was closed by the author (unfortunately, because it's way better approach).
That's what I am using in my wrapped side-menu version to handle that use-case:
  constructor(props) {
    super(props);
    this.isOpen = this.props.isOpen;
  }

  componentWillReceiveProps(props) {
    if (this.props.isOpen !== props.isOpen) {
      this.toggleMenu();
    }
  }

CC: @steida that's actually what we have in Este as well.

https://github.com/react-native-fellowship/react-native-side-menu/blob/master/index.js#L71-L75 already

Cool, so this can be closed, CC: @steida

authors: Kureev grabbou


text:
fix(issues): fixes #1734 and #1874 by throwing and catching errors correctly

"Unsupported file type" error was not thrown when mimeType could not be found (i.e. ICO files). Closes #1734
Exif data was trowing error when trying to run SimpleDateFormat(...).parse(...) on a null object (seems like a lot of photos on Android don't include exif say if they have been edited using an different app or downloaded from internet). Closes #1874

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

authors: Johan-dutoit lukebrandonfarrell


text:
Make Video player minimize if user go to another screen

I am looking for a functionality so that if user will go to another screen video still play in a modal screen way. and user can move it anywhere. I need a overview on it that how can i make it. Or is it available in the react-native-video?

That's outside the scope of this module. You can use the video player component inside a RN component and then manipulate that.

@puneetkansal04 maybe this ticket can help : https://github.com/react-native-video/react-native-video/issues/2605

authors: freeboub hueniverse puneetkansal04

repo: react-native-video/react-native-video


text:
Ability to set header or custom component for poster

Feature Request

Why it is needed
Constantly the same posters can be boring in dynamic applications, so a structure like on source for posters or structures where we can show our custom own components as posters will be nice and simple to use. Long story short :D
It would be great if we can switch to a structure where we can pass header just like on source
Possible implementation
Code sample

<Video
          uri: podCasturl,//here is the,
          headers: {
            access_token: accessToken, // token for reach our api
          },
        }}
        poster={{
          uri: podCasturl,//here is the,
          headers: {
            access_token: accessToken, // token for reach our api
          },
        }}
        posterResizeMode="center"
      />

or

const renderCustomPoster = () => {
    return (<Image />) // here custom images how developer needs
}
<Video
          uri: podCasturl,//here is the,
          headers: {
            access_token: accessToken, // token for reach our api
          },
        }}
        poster={renderCustomPoster()}
        posterResizeMode="center"
      />

I understand the issue, and I think you can have a look to Video.js file (this is full js feature).
poster is displayed like this:
        {this.state.showPoster && (
          <Image style={posterStyle} source={{ uri: this.props.poster }} />
        )}

you can extend RNV api to add a prop:
posterProps:{{
          headers: {
            access_token: accessToken, // token for reach our api
          },
}}

And than:

        {this.state.showPoster && (
          <Image style={posterStyle} source={{ uri: this.props.poster }} {...posterProps} />
        )}

I PR would be welcome ! :)

@ahmeturganci the feature has just been merged. It will be enabled in the next release. You can read more here: #3972 :))

authors: ahmeturganci freeboub moskalakamil


text:
Crunchyroll Android Improvements

This is a collection of improvements we've done for the Crunchyroll Android app:

Support disabling buffering
Fix AudioFocus bug that could cause the player to stop responding to play/pause in some instances.
Fix player crashing when it is being cleared.
Add support for customising back buffer duration and handle network errors gracefully to prevent releasing the player when network is lost.
Allow player to be init before source is provided, and later update once a source is provided.
Adds handling for providing a empty source in order to stop playback and clear out any existing content
Add support for onBufferProgress prop on Android to get buffer data even when the player is paused.
Add support for detecting if format is supported and exclude unsupported resolutions from auto quality selection and video track info in RN.
Improve error handling
Add support for L1 to L3 Widevine fallback if playback fails initially.
Reduce buffer size based on available heap
Force garbage collection when there is no available memory
Improve memory usage
Support disabling screen recording
Improved error capturing
Fix DRM init crashes
Improve progress reporting
Fix progress loss when network connection is regained

Testing
Either use the test apps in this project or link your own project to this PR and test everything related to playback.

Hi,
Sorry for the lot of comment, but it is a good PR with new great features !
Thank you !
(and let's discuss on comments, not everything is mandatory)

@freeboub Thanks for the great feedback!
I think that for most of the comments we should address them separately since this is already a large PR and it doesn't appear that the current state is inherently bad, but could be improved upon in general not only relating to changes in this PR.
I would recommend we create issues with all of the improvements not addressed in this PR and start getting feedback from the community on which of them is the highest priority and start implementing them one by one.
@cobarx @hueniverse What do you think about this approach?

I agree we should only fix actual issues with the PR and defer all improvements to follow up work. Please open an issue for each comment and resolve it so we can keep track of what needs to happen.

@hueniverse I created issues for all addressable issues 👍 If anyone finds that I missed any, please let me know.

Agree with @armadilio3's suggestion that we record the improvements and take them up one by one. Our team has limited capacity to devote to changes, so picking them up incrementally would be much better.

@freeboub I cleaned up some stuff 👍 I had some questions on some of your comments, let me know how you want to handle those

@freeboub Can you take another look? I fixed/responded to some of the feedback

PR Tested on sample provided in exemple/basic:
I have following crash when playing local file (require('./broadchurch.mp4'))
[Fri Jun 03 2022 18:39:31.221]  LOG      {"error":{"errorStackTrace":"com.google.android.exoplayer2.ExoPlaybackException: Unexpected runtime error\n\tat com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:587)\n\tat android.os.Handler.dispatchMessage(Handler.java:102)\n\tat android.os.Looper.loop(Looper.java:223)\n\tat android.os.HandlerThread.run(HandlerThread.java:67)\nCaused by: java.lang.IllegalStateException\n\tat com.google.android.exoplayer2.util.Assertions.checkState(Assertions.java:86)\n\tat com.google.android.exoplayer2.source.ProgressiveMediaPeriod.selectTracks(ProgressiveMediaPeriod.java:281)\n\tat com.google.android.exoplayer2.source.MaskingMediaPeriod.selectTracks(MaskingMediaPeriod.java:186)\n\tat com.google.android.exoplayer2.MediaPeriodHolder.applyTrackSelection(MediaPeriodHolder.java:292)\n\tat com.google.android.exoplayer2.ExoPlayerImplInternal.reselectTracksInternal(ExoPlayerImplInternal.java:1643)\n\tat com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:503)\n\t... 3 more\n","errorCode":"2001","errorException":"com.google.android.exoplayer2.ExoPlaybackException: Unexpected runtime error","errorString":"ExoPlaybackException type : 2"}}

@freeboub I fixed single track playback. Can you test again?

@freeboub I fixed single track playback. Can you test again?

I confirm this is fixed, thanks

Force garbage collection when there is no available memory
I think this might be the culprit why our FireTV Sticks starting having frame drops, this works on 5.x versions of react-native-video

authors: EyMaddis armadilio3 cobarx freeboub hueniverse


text:
MIGRATED: WebView does not send custom request header after the first initial page load (#8693)

Migrated from React Native core: https://github.com/facebook/react-native/issues/8693
@chiraggshah says:

The source prop for WebView allows for passing request headers. When the webview renders for the first time, the request headers are sent.
But when the links within that page are clicked, the headers are not sent to the server in the request header.
Similarly, when the goBack() method is called on the WebView, the request headers are not being sent.

More context available in the original issue.

I would also like to have those headers being sent to all the internal resources as well. For example, a page has some static resources(images/css/js) and when those resources are being fetched from the server we might want to pass those headers along with those requests.

@ErrorPro Do you have some time to dig into this and see what it might take to implement?  There are other webview implementations out there that might have already solved this issue.

@jamonholmgren Ok, I'll try to dig into it :)

Yay @ErrorPro !!

Related: #18

We need this so badly! The suggestion of using a handler for each request would be nice, since it accommodates both needs (the ones that need headers only on initial load and the ones that need it on every request). Also, maybe you need different headers on first request (auth token) and other headers on subsequent requests.

For those who need a quick solution they can use right now, I've created something that works for ios by patching the RCTWebView.m control in react-native:
Here's a diff from RN 0.56.0 (this is the version I'm currently using):
https://github.com/qubitron/react-native/commit/d4df41b771b7edb9221da7c6873d1f56abefe8fc
I realized as I was implementing this that I don't want auth headers to be arbitrarily sprayed out to sites accessed by the webview control, so my solution was to use an extra sendHeadersToHosts entry in the source property, so that the headers are only sent to hosts that match the desired list.
With the above patch applied, the following works generally:
<WebView
    ...
    source={{
        uri: 'foo.com',
        headers: {'name': 'value'},
        sendHeadersToHosts: ['foo.com']
    }}>

Headers are then sent to all GET, POST, etc requests originating from the webview with host name containing foo.com.
I have not yet been successful getting the same approach to work on Android, as it is significantly harder to intercept requests there.
The WebView APIs on Android make it difficult to make this work for anything other than GET requests. While it's possible to intercept GET, POST requests by overriding
WebViewClient.shouldInterceptRequest method, the callback does not provide the POST body making it impossible to re-create the desired request.
Custom javascript needs to be injected into the webview to intercept POST calls and get the AJAX/form data body. There is a sample solution for this in the following repo:
https://github.com/KeejOow/android-post-webview
I have not had time to attempt this yet, but it looks like the only approach that might work.

still no solution? i found a work-around for android only, but isn't setting headers a fundamentally important mechanism for mobile apps?
onShouldStartLoadWithRequest={(navigator) =>
{
  this.setState({url: navigator.url});
  return false;
}}

Not sure if is the same issue you are having. This is the problem I was having with headers not being sent. It was a bug in chrome version 71. Apparently got fixed in version 72.
https://bugs.chromium.org/p/chromium/issues/detail?id=925559#c7

@jpodpro Your solution works only for GET requests, not POST requests in case there are form submissions within the WebView.

@harryharihar there is none.

you need to implement shouldInterceptRequest on android

Is this in the timeline for the future?

I come here almost every day to see if it's fixed.  😔

I was trying to use shouldInterceptRequest.
Original request implementation works on chromium binary level. Overriding shouldInterceptRequest might cause other issues related to webview under the hood things. It seems like shouldInterceptRequest is supposed to be used for loading data from custom cache, not for request modification.

Guy's just want to figure out if this issue is being worked on at the moment and if no one figured out a work around.
Initially I ad authorization header to my webview and it gives me logged in user. Navigating around the site breaks and user is logged out.
Is there no way of persisting a header ?

@zuandre No, there is currently no way to persist headers.
That is what this issue is about.

Status: still waiting on a community PR to be submitted to fix this issue.
Workaround: there are a few in this thread, notably: https://github.com/react-native-community/react-native-webview/issues/4#issuecomment-427671845

After 3 years has this still not been addressed?

Does anyone have a different workaround from the one suggested above? People using Expo are forced to use a specific version of React Native, and I believe Expo has a non-negligible number of users

Sorry, I'm kinda newbie. But there is this react-native-webview from community same as react-native?
at my package.json Im using:
"dependencies": {         ...        "react-native-webview": "^7.5.2",        ... }
Can I still use solution from

#4 (comment)

or should I change to
"dependencies": {         ...        "@react-native-community/react-native-webview": "^7.5.2",        ... } first?

@jamonholmgren Can this issue be reopened?

@chiraggshah is your patch from the 2016 article still working ?
https://blog.bigbinary.com/2016/07/26/passing-request-headers-on-each-webview-request-in-react-native.html
I think I just hit this.

@meshaabi : Yup.

Still No solution for Y-2020 ???!!
Did react-native-webview updated to solve it ?

Status: Still waiting on a community-submitted solution for this problem.
WebView is maintained by volunteers (with limited free time). We rely on the community to help us devise solutions to common problems like this.
Another idea: if someone is interested in hiring a consulting company to fix this, feel free to get in touch with one. (I own one, but won't link it here due to conflict of interest.) I'm happy to work with them to get this pushed out.

Still waiting on a community-submitted solution for this problem.

Sadly, there was a pull request many months ago, but the mods did not review it and let it be closed. This is really discouraging.

Since 2018!!!   Any solution yet?

no ... chiraggshah opened this issue on 11 Jul 2016
https://github.com/facebook/react-native/issues/8693

any update on this?

Should this be reopened?

Should this be reopened?

yes pls ✌🏻

Should this be reopened?

It would be great

Any update on this?

Hey, I have a issue related to that. I'm trying to get user location from de server throw the webView. But when the server asks permission to device, in IOS, only, the msg are not translated as de device settings. For example, my Iphone has Portuguese language but, when a receive the alert from the server in may app, the msg are in English. But in other devices brand, works good. I tried to pass some headers instructions, but not successfully. Does someone knows why, and have some workaround?

Should this be reopened again?

Should this be reopened again?

Definitely.

Should this be reopened again?

Definitely.

Holy moly! Imagine not being able to send a custom request in 2021!

Is there some forks available that works? :|

any update on this?

any update on this?

I have a feeling that this project has been abandoned 😥

Why is this issue closed? Reopen, please.

We are running into this issue as well can we reopen please?

any update?

any update?

@Titozzz just inquiring about the status here, since you mentioned on Sep 26, 2018 that "we are committed to fix this".
@ErrorPro did you find out something when you dug into it?
@jamonholmgren could you reopen this issue, since people are still experiencing the issue (and have been for a while)?

just found that react-native-webview has a props called "basicAuthCredential".
Not sure everyone is trying to do it for basic auth or not
https://github.com/react-native-webview/react-native-webview/blob/master/docs/Reference.md#basicAuthCredential

Nearly 4 years and counting! We need this reopened! Pretty basic stuff.

As this issue does not get any traction at all and is already closed, I decided to open a new issue, referencing this issue. Hopefully that will attract some attention of the maintainers. This is still an active issue. And I don't feel it will be re-opened soon, so I've opened a new one.

I solved this problem for my work app. I created local server inside app, which "proxy" all requests with authroization headers. Inside html I changed all links to "http://localhost:1111/path_to_img".
For local server used this as template https://github.com/react-native-community-library/react-native-webserver
Its work!

I was running into a similar issue. 💀
I came across the section in the react-native-webview documentation that helped me solve it!  🙌🏼
Essentially, you will have to trigger a re-render to make sure that custom headers are injected into every webpage loaded into the WebView component.
Fix summary

Storing the url in a React.state variable
Pass a function into the onShouldStartLoadWithRequest prop  of the <WebView /> component.
This function will be triggered whenever a new request is made in the WebView component.
In this function you will check whether the new url (available in function params; request.url) is the same as the current state url.
If it is not, then store the new url in the state, this will trigger a re-render which should inject the custom header in the new page.

Example from docs
const CustomHeaderWebView = (props) => {
  const { uri, onLoadStart, ...restProps } = props;
  const [currentURI, setURI] = useState(props.source.uri);
  const newSource = { ...props.source, uri: currentURI };

  return (
    <WebView
      {...restProps}
      source={newSource}
      onShouldStartLoadWithRequest={(request) => {
        // If we're loading the current URI, allow it to load
        if (request.url === currentURI) return true;
        // We're loading a new URL -- change state first
        setURI(request.url);
        return false;
      }}
    />
  );
};

<CustomHeaderWebView
  source={{
    uri: 'http://example.com',
    headers: {
      'my-custom-header-key': 'my-custom-header-value',
    },
  }}
/>;

Hello. I'd like to post a workaround here too. I had a case where subsequent api calls inside the webview weren't getting the headers either. So a colleague came up with this workaround, where you force the header on the fetch api inside of the webview.
<WebView
  source={{
    headers: {
      ...(props.source.headers ?? {}),
      Authorization: "Basic ***",
    },
  }}
  sharedCookiesEnabled={true}
  webviewDebuggingEnabled={true}
  injectedJavaScriptBeforeContentLoaded={`
    XMLHttpRequest.prototype.open = (function(open) {
      return function(method,url,async) {
        open.apply(this,arguments);
        this.setRequestHeader('Authorization', "Basic ***");
      };
    })(XMLHttpRequest.prototype.open);
    var originalFetch = window.fetch;
    window.fetch = function (input, init) {
        if (!init) {
            init = {};
        }
        if (!init.headers) {
            init.headers = new Headers();
        }
        if (init.headers instanceof Headers) {
            init.headers.append('Authorization', 'Basic ***');
        } else if (init.headers instanceof Array) {
            init.headers.push(['Authorization', 'Basic ***']);
        } else {
            init.headers['Authorization'] = 'Basic ***';
        }
        return originalFetch(input, init);
    };
  `}
  injectedJavaScriptBeforeContentLoadedForMainFrameOnly={false}
  injectedJavaScriptForMainFrameOnly={false}
/>

Hello. I'd like to post a workaround here too. I had a case where subsequent api calls inside the webview weren't getting the headers either. So a colleague came up with this workaround, where you force the header on the fetch api inside of the webview.
<WebView
  source={{
    headers: {
      ...(props.source.headers ?? {}),
      Authorization: "Basic ***",
    },
  }}
  sharedCookiesEnabled={true}
  webviewDebuggingEnabled={true}
  injectedJavaScriptBeforeContentLoaded={`
    XMLHttpRequest.prototype.open = (function(open) {
      return function(method,url,async) {
        open.apply(this,arguments);
        this.setRequestHeader('Authorization', "Basic ***");
      };
    })(XMLHttpRequest.prototype.open);
    var originalFetch = window.fetch;
    window.fetch = function (input, init) {
        if (!init) {
            init = {};
        }
        if (!init.headers) {
            init.headers = new Headers();
        }
        if (init.headers instanceof Headers) {
            init.headers.append('Authorization', 'Basic ***');
        } else if (init.headers instanceof Array) {
            init.headers.push(['Authorization', 'Basic ***']);
        } else {
            init.headers['Authorization'] = 'Basic ***';
        }
        return originalFetch(input, init);
    };
  `}
  injectedJavaScriptBeforeContentLoadedForMainFrameOnly={false}
  injectedJavaScriptForMainFrameOnly={false}
/>

I spent about 10 hours on this one. This is the only solution that ever worked.

I’m using React Native 0.76.4, and unfortunately, I experienced this issue with the latest version of react-native-webview. The custom headers were not being sent to the server when the WebView loaded initially. Therefore, I had to downgrade to version 11.22.7. This version works perfectly fine.

authors: 100phel ArthurBrum BettyJJ ErrorPro Flip32 VaniaPopovic YesSkyscrapers amiel-dev anasyo10 ashishAmz chiraggshah connor-odoherty daande ettingshausen feliperaul fortydegrees fwon hamzahayat hiepnsx jamonholmgren jasperkuperus jenniredfield jlrojasVipera jpodpro mausworks meshaabi mikecreuzer nullmicgo odinsey ou2s pablichjenkov punksta qlur qubitron redbar0n sibelius softmastx stonebinox tdinckaya teseo thijs-qv tmaly1980 tonmanayo trnc-ck zuandre


text:
remove buildToolsVersion

buildToolsVersion is no longer necessary, it'll default to Android Gradle Plugin version specification

@Titozzz please review and merge


text:
Make sure header back button is accessible

We are using accessibility identifiers to click the buttons. It looks like we set accessibility label here... so setting accessible to false has probably been a mistake.

yeah this is strange, I have no idea who wrote the original code for this and why accessible was set to false - I believe the change that you have made is correct

my bad, that was actually me who merged it here: https://github.com/react-navigation/react-navigation-stack/pull/14
@Nigh7Sh4de - what do you think?

Yeah I noticed that some changes must have happened after my PR because a few days later it stopped working. I'll make another PR in the next couple weeks once I'm done the project I'm working on and have everything assembled and working.

authors: Nigh7Sh4de backmeupplz brentvatne

repo: react-navigation/react-navigation-stack


text:
feat(a11y): alternative text for the FontIcon

add attribute to set an alternative text to the icon.
hide the text inside the component used by Material to render the icon.
remove unused attribute children. This attribute had the same description as the value attribute in the README file.

It is related with #225.

Thank you!!

authors: felixzapata javivelasco

repo: react-toolbox/react-toolbox


text:
Issue70 add all option to create-project

Adds an all option for create-project, sub-directories are created with the suffixes Api, Admin, and Storefront
Solves https://github.com/reactioncommerce/cli/issues/70

@breakerbar This looks correct but the commit message does not match the semantic release format so it's not going to trigger a release. You should add the feat: prefix

force pushed with feat: prefix

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

authors: breakerbar rc-publisher zenweasel

repo: reactioncommerce/cli


text:
What types must be read and written from a TcpConnection?

This came out of the discussion in #21 in this comment, specifically:

My expectation is that the ReactiveIPC layer is doing the minimal possible and its input and it works with byte buffers and object conversion is left as a separate concern.

This issue intends to discuss at what level does a TcpConnection work on:

Read & write only Bytes
Read & write custom user objects.

In case we choose to go with 2 above, then we need to define semantics around how to convert a user defined object into bytes.

Is this not also related to #23 where an intercept mechanism is expected to be able to can change the type of input and output? Likewise #10 that discusses how to deal with transport-specific byte buffer abstractions?

@rstoyanchev certainly interceptors would be a way to convert the types written on the connection. I am unsure if we need a specific "codec" abstraction or not, we can discuss that sometime too.
#10 is related if we say that Buffer is the way to write bytes on the TcpConnection.
I created this issue specifically to discuss the type signatures of a TcpConnection originating from your comment on #21. If we are saying that a TcpConnection only handles bytes and the only way we can write bytes is via a Buffer then the TcpConnection type signature would look like:
public interface Connection<Buffer, Buffer> extends Publisher<Buffer> {
}

OTOH, if we say that one can write any object on the Connection then it would be like:
public interface Connection<R, W> extends Publisher<R> {
}

With writing any type on the connection, we would then have to discuss how does one configure a connection for those types, i.e., via interceptors, codec, etc.

I think we need a "codec", we just don't have to call it that. A codec is, after all, simply an asymmetric pair of transformers. We can specify that by saying .intercept(Interceptor<R,NEWR>, Interceptor<W,NEWW>)
I think a Buffer is, paradoxically, more flexible than a raw Publisher because it gives a logical extension point to all manner of things that aren't codified by an RS Publisher (which is completely opaque). It is not simply a ByteBuffer clone. A Buffer could be a Buffer<ByteBuffer> or a Buffer<ByteBuf> or a Buffer<Publisher<B>> or a Buffer<ZFrame> in the ZeroMQ case. Its append methods are not strongly-typed so you can append(Message) if you want. A Buffer<B> could be a Publisher<B> as well, which allows us to provide all kinds of useful allocation abstractions for code that needs to create new underlying types like ByteBuf and ZMsg without having to directly deal with the transport's allocation APIs. We can't assume that all code outside the transport layer has easy access to creating new versions of objects to be written, especially if there are any generic third-party components at the protocol layer.
I feel like Buffer also makes conversion easier to deal with in the abstract.
I'm less a fan of the connection directly extending a Publisher<R> than I was. I think it's actually clearer to deal with a Buffer<R> (which extends Publisher<R>) rather than a connection which deals directly with R's.

We are discussing some form of interception under #23 that can transform the connection, so it makes sense for TcpConnection and TcpHandler to be generic. The question is what comes in and out of the transport (essentially the concrete types on the first handler) and how much does the transport know about the types of Objects that pass through?
Currently the transport casts to the generic type of the first handler. On the writing side it simply writes to the channel.  That means whatever the first handler expects should be a ByteBuf or there must be a Netty codec in place.
This might be just fine for TCP. However for other protocols the transport will play a role of translating to and from Netty types. In HTTP for example turning Netty's HttpRequest to a ReactiveIPC HttpRequest, taking Netty's HttpContent and publishing bytes, etc. Same for Memcached and other protocols.
In general I see the transport layer as serving the role of a boundary between Netty types and ReactiveIPC types, performing translation as needed rather than being completely passive and letting everything through. That said we shouldn’t impose restrictions without good reason.
What may qualify as good reason is the impact on back-pressure. It is easy to reason about back-pressure when dealing with bytes. I’ve experimented with simple read and write back-pressure and it’s clear that if Netty codecs are in use, it becomes a very different situation, one that I’m not sure the transport can effectively deal with especially since it has no knowledge of the objects going in and out.
https://github.com/rstoyanchev/reactive-ipc-jvm/tree/tcp-poc
For example when autoRead=false we can call channel.read() once per request(1). When reading bytes that will result in one channelRead event with a ByteBuf no larger than the size of the input buffer. This is simple and predictable. If a codec is involved, a single call to read() may not result in a channelRead event since there may not be enough data. We can continue to call read() at that point until we get enough to create an object but then it’s much harder to define what request(1) means. Similarly on the writing side if producing bytes it’s easier to define what request(1) means and what’s expected from each Publisher. If the we get Objects from a Publisher and pass those down to Netty codecs we have no idea how much data will actually be written.
All in all while the TcpConnection and TcpHandler should remain generic, I think there are good reasons to draw a clear line at the transport layer and make it work explicitly with bytes when it comes to TCP and that will work well for other protocols too (e.g. the body of the HTTP request and response). Transformation to other types is then left strictly as an exercise for the interception chain. I can imagine adapting Netty codecs to RS Publisher/Processor contracts and vice versa so that the use of Netty codecs is still possible and perhaps such adapters can also provide support for buffering and generally assist in dealing with back-pressure.

@rstoyanchev your conclusion here seems to be coming from the fact that it is unclear how back-pressure will be implemented in presence of codecs in netty's pipeline. If so then let me concretize the back-pressure implementation in my proposal and then we can discuss whether back-pressure is a reason to impose the restriction that type conversions must only be done by interceptors.
Personally, I feel that imposing this restriction isn't helpful and forces users to create these "pass-through" adapters to netty codecs. I would like to allow people to add netty codecs as-is when using netty transport and also for us to be able to write codecs independent of netty's contracts. Finding a common path IMO creates a false abstraction.

@NiteshKant by all means I believe back-pressure support, even in the most basic form, is essential for this design discussion.
Note that I’m not simply saying it’s unclear how back-pressure could work with Netty codecs. And by no means am I looking for a transport-neutral option, actually from that perspective we could just let Objects pass through and then it's a choice. It’d be hard to justify restricting use of codecs simply because some might choose to do that (some might not). It has to come down to better reasons than that.
I would very much like to see your ideas about how the transport can deal with back-pressure when Objects are serialized and deserialized on the Netty side. It’s something we have to discuss anyway for #25 and #28 and it would help move this discussion forward.
For now I’ll just say that since we are creating a reactive model on top of transports like Netty it’s fair to ask what the best way and place (or places) is in this new model to deal with back-pressure in the context of network I/O where we go from bytes to Objects and vice versa? What’s the relationship between encoding/decoding and back-pressure? Is it something we need to help solve as a problem once, or can it be treated as a black box with regards to back-pressure calculations?
Clearly we need more experimenting. Even if the transport was to deal with bytes only, at some point encoding and decoding still needs to be done, and at that point back-pressure calculations change. My point is that what works naturally when using Netty directly may not be what works best with RS data pipelines or may lead to design trade-offs.

authors: NiteshKant jbrisbin rstoyanchev

repo: reactive-ipc/reactive-ipc-jvm


text:
reactpy.run and configure(...) refactoring

Issues
Right now reactpy.run can fail in fairly unpredictable ways which give little in terms of stack traces.
Summary
This refactors the reactpy.run call stack in order allow failures that are user-readable.

Change reactpy.backends.utils.find_all_implementations() to first try to import <backend_name> before importing reactpy.backend.<backend_name>

Allows for missing sub-dependencies to not cause reactpy.run to silently fail

Import uvicorn directly within serve_with_uvicorn in order to defer import.

Allows for ModuleNotFound: Could not import uvicorn exception to tell the user what went wrong

Added CommonOptions.serve_index_route: bool

Allows us to not clutter the route patterns when it's not needed
There are real circumstances where a user might want the index route to 404

Fix bug where in-use ports are being assigned on Windows.

Removes allow_reuse_waiting_ports parameter on find_available_port()

Rename BackendImplementation to BackendProtocol
Change load order of SUPPORTED_PACKAGES so that FastAPI has a chance to run before starlette
Rename SUPPORTED_PACKAGES to SUPPORTED_BACKENDS
Refactor reactpy.backend.* code to be more human readable
Use f-strings where possible
Merge if statements where possible
Use contextlib.supress where possible
Remove defunct requirements.txt file

Checklist

[ ] Tests have been included for all bug fixes or added functionality.
[x] The changelog.rst has been updated with any significant changes.

@rmorshea npm install -g npm@8.5.0 seems to have broken in the github workflow in the last 24 hours. Not sure why, but I tried bumping actions/setup-node version. Did not fix it.

I was planning on doing a 1.0.1 release tomorrow. Should this wait for the next release?

Yes, technically this release has an API change (BackendImplementation to BackendProtocol), so we shouldn't put this in a hotfix release.

I discovered that the reason why Flask doesn't work with uvicorn is that WsgiToAsgi does not allow non-HTTP scopes. I attempted to rewrite WsgiToAsgi but it broke a ton of other stuff.
Ref: https://github.com/miguelgrinberg/flask-sock/issues/58

@rmorshea This seems to be mergeable, but needs approval.

authors: Archmonger rmorshea

repo: reactive-python/reactpy


text:
Fix/lerna build

This PR should resolve #199 and has a little fix for tsc command, that was failing as well, after Lerna build started running again.
I've checked Lerna releases for backwards incompatibilities and haven't found one, so I guess it will not break anything here.

I see that I miss secret env variables for Sauce in travis-ci, should I fix it? And if yes, how?

I'll fix the secret, thanks!

authors: eXon naffiq

repo: reactivestack/cookies


text:
Done Translating-reference-react-dom-server.md

@iRayan7 Done ✌

🎉


text:
[fixed] typeof returns a string (canUseDOM).

This happens when testing for canUseDOM.
Changes proposed:
Upgrade Path (for changed or removed APIs):

None

Acceptance Checklist:

[x] All commits have been squashed to one.
[x] The commit message follows the guidelines in CONTRIBUTING.md.
[x] Documentation (README.md) and examples have been updated as needed.
[x] If this is a code change, a spec testing the functionality has been added.
[x] If the commit message has [changed] or [removed], there is an upgrade path above.

Coverage decreased (-0.04%) to 86.207% when pulling fc97fa0fa4ff05cb363e608477044cf90dc4dfc8 on diasbruno:fix/typeof-returns-string into cd10612f184542cecdb5db2a3847431c0ae83b31 on reactjs:next.

Coverage decreased (-0.04%) to 86.207% when pulling ed7e3d16b09b11bf36e02474d0dfb2fffdba1642 on diasbruno:fix/typeof-returns-string into cd10612f184542cecdb5db2a3847431c0ae83b31 on reactjs:next.

Coverage decreased (-0.04%) to 86.207% when pulling ed7e3d16b09b11bf36e02474d0dfb2fffdba1642 on diasbruno:fix/typeof-returns-string into cd10612f184542cecdb5db2a3847431c0ae83b31 on reactjs:next.

It should be ok now. Tested on node.

Coverage decreased (-0.04%) to 86.207% when pulling c6874cf6c2b7837a00d87f8166078bdbde9530d0 on diasbruno:fix/typeof-returns-string into cd10612f184542cecdb5db2a3847431c0ae83b31 on reactjs:next.

@diasbruno
Still semantially your code is weird
const canUseDOM = typeof window !== 'undefined' || (
  typeof document !== 'undefined' && document.createElement
);

So you're demanding either window or document.
And at the same time you're not using window anywhere.
Not to mention that even if window exists it doesn't mean document exists.

window is just a first bail and if window is present, we go ahead to check for document.

and if window is present, we go ahead to check for document.

No

Sorry, merge too soon.

Updated the checker to use your. Thank you.

Yeah, looks good now

authors: catamphetamine coveralls diasbruno

repo: reactjs/react-modal


text:
Upgrade to React 19, Next 15.1 and enable React Compiler

This change upgrades react.dev to React 19, Next 15.1, TypeScript 5.7.2, enables the React Complier, and removes the patches for next, next-remote-watch and removes the patch-package package.
Preview, 19 Preview

@gaearon @rickhanlonii can either of you take a look or suggest someone else to review?


text:
Update introducing-jsx.md

Если ваш пулреквест является исправлением бага, а не переводом, то сперва убедитесь, что проблема относится ТОЛЬКО к https://ru.reactjs.org, а не к https://reactjs.org. Если это не так, то пулреквест следует открыть в родительском репозитории.

Рад помочь! )
вт, 11 авг. 2020 г. в 16:01, Nick Tishkevich notifications@github.com:

Merged #531 https://github.com/reactjs/ru.reactjs.org/pull/531 into
master.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/reactjs/ru.reactjs.org/pull/531#event-3643053373, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/APHFWETWS2P4Z2REDMHGBMLSAE6KHANCNFSM4P3ABWAQ
.


text:
fix | The styling for the Become a Prime Sponsor button is  #1268

…t. #1268

First thing, PLEASE READ THIS: ReactPlay Code Review Checklist

Description
Fixed the styling issue mentioned in - The styling for the "Become a Prime Sponsor" button is not correct. #1268
Fixes # (issue)
Type of change
Please delete options that are not relevant.

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

How Has This Been Tested?
Tes
Checklist:

[Y] I have performed a self-review of my own code
[Y] My changes generate no new warnings
[Y] I have added tests that prove my fix is effective or that my feature works

Screenshots or example output
(https://res.cloudinary.com/dxkxvfo2o/image/upload/v1696407285/changes_neut00.png)

@nabendu82 could you show a demo?

repo: reactplay/react-play


text:
Modal component stops propagation of click events

components: Modal
reactstrap version #8.9.0
import method es
react version #17.0.1
bootstrap version #4.4.1

What is happening?
When I click anywhere on the Modal, the event does not propagates to the document.
What should be happening?
The event should propagate to the document
Steps to reproduce issue

add click event listener on document.
open modal and click inside modal
the click listener on document will not be fired.

Code
Reproduction of the issue.
https://codesandbox.io/s/dreamy-solomon-eic6j?file=/src/App.js

The regular bootstrap modal does not stops propagation. I have tested it here: https://getbootstrap.com/docs/5.0/components/modal/
Event propagation is part of the specification and stopping it is a bad practise.
https://css-tricks.com/dangers-stopping-event-propagation/

I can confirm this is indeed a misbehavior.
document.documentElement.addEventListener('click', console.log) for a quick try. Nothing logged in reactsrap modal, something logged in the bootstrap doc.
https://github.com/reactstrap/reactstrap/blob/8fcfc091e6966481b46346d71043a2b42043965a/src/Modal.js#L249 should probably be removed, and as said by @mkamalkayani , we should strive to not break the web, and stopping the propagation IS breaking the web.

I just got bitten by this... commenting out that line in Modal.js works fine and I have not noticed any negative effects. Any chance of getting this bumped? Thanks!

We are experiencing the same issue with the Modal component, causing the document click to not be triggered when using the React 18 version sample.
Sample link: https://stackblitz.com/edit/react-ohyptq-xvq3gq?file=index.js
Kindly provide the solution or workaround to resolve this issue on our end.

Getting same issues. For instance, using choices.js inside a reactstrap modal doesn't work because of the event propagation being stopped: https://codesandbox.io/p/sandbox/reactstrap-choicesjs-379ht9. Only work around right now is @Sinewyk 's suggestion

authors: Sinewyk Yuvan111 eblancperso mattparlane mkamalkayani

repo: reactstrap/reactstrap


text:
How to make the table sortable? any reference?

Issue description

components: Table
reactstrap version 8.9.0
import method umd/csj/es
react version 17.0.2
bootstrap version 5.1.0

What is happening?

What should be happening?

Steps to reproduce issue

...
...

Error message in console
paste error message with stacktrack here

Code

Hi @Jazzykhan , this is not currently a part of reactstrap, though might be a good idea to have Table helper like this.
I am aware of this implementation which is based on Bootstrap & reactstrap:
https://github.com/appfolio/react-gears/blob/master/src/components/UncontrolledTable.tsx
Demo:
https://appfolio.github.io/react-gears/?path=/story/table--uncontrolled-table-example

@Jazzykhan - Try react-table. It's got a lot more functionality.

authors: Jazzykhan bestguy hollygirouard


text:
Electron v6

Most of the critical changes are in the r2-navigator-js component, but all R2 packages have been updated to track the NodeJS version 12 API. This has been tested with LCP in r2-testapp-js (recompiled native plugin).

Fixes https://github.com/readium/readium-desktop/issues/496

repo: readium/readium-desktop