Allow futures on Serve and Stub to be Send

Not sure if this approach is the right one, so this MR is a draft.

Sorry for the delay in reviewing! Will try to look in the next week.

This looks like a reasonable change to me.

Perfect, that's what I was looking for by putting up an early draft.

Doesn't Serve need to be made a trait variant, too?

Probably, was just focusing on my use case a little too much 😅

Also, could you add some tests demonstrating how it will work for users?

Will do, as I mentioned this is an early draft to make sure the change makes sense.

I'll get back to this in a day or so, thanks for the review!

Haven't forgotten, just wrapped up in other stuff. I'll try to get to it soon!

Looks like trait_variant::make doesn't support default implementations in trait definitions. I could update the macro in that crate, thoughts?
Also, how do you feel about renaming Serve and Stub to LocalServe and LocalStub so that the "default" type is Send, seems like the more common use case potentially.

I've given it some more thought and I'm wondering if the right move is to instead have a feature flag that annotates all traits with async methods in them with async_trait. Thoughts @tikue?

I also just saw https://github.com/rust-lang/rfcs/pull/3654. Wonder how long it will take to be available on nightly?

I also just saw rust-lang/rfcs#3654. Wonder how long it will take to be available on nightly?

Looks like even post-implementation the RFC still recommends the pattern provided by trait_variant: https://github.com/nikomatsakis/rfcs/blob/rtn/text/0000-return-type-notation.md#rtn-supports-convenient-trait-aliases

Sorry for ping, any updates?

Sorry for ping, any updates?

I'm currently using my fork's branch trait-variant and it seems to work fine. Probably that could be merged soon since it is backwards compatible with the old way, as it only adds Tokio* types that bound the futures to be Send.

Hey @ShaneMurphy2 taking another look at this in a while. Are you still interested in getting this merged?

I'm ambivalent on getting it merged as I think we can do better with the API, and I'm not confident this is the right approach in the general case. It works for our use case and a fork is ok for us for now.

Also, I'm kind of curious about trying out a feature-gated implementation that uses return-type notation rather than trait_variant. Some related thoughts on #480

That could be neat, I agree with your sentiment about being "forward thinking".
In a similar vein with using feature-gating, it could be nice to put the async_trait macro on all the traits behind a feature gate. That macro makes async traits very ergonomic for folks who can afford the performance hit.


Update TeamSQL app (teamsql.rb) to version 2.1.127

Update TeamSQL app (teamsql.rb) to version 2.1.127
The changes passed the tests:

[x] brew cask audit --download {{cask_file}} is error-free.
[x] brew cask style --fix {{cask_file}} reports no offenses.
[x] The commit message includes the cask’s name and version.

Thanks for the PR!


Guidance in getting wins ?

Not sure if I am calling the right methods here:
import net.rithms.riot.api.endpoints.league.dto.LeagueList;
Summoner summoner = api.getSummonerByName(Platform.NA, username);
Set league = api.getLeaguePositionsBySummonerId(Platform.NA, summoner.getId());
Now after this if I'm correct so far to get wins would if be like this:
int wins = league.getWins();
Because league**.** doesn't give me those methods. Using newest version 4.0.1

Note that league is a Set.
You can iterate over it like this:
`
import net.rithms.riot.api.endpoints.league.dto.LeagueList;
Summoner summoner = api.getSummonerByName(Platform.NA, username);
Set leagues = api.getLeaguePositionsBySummonerId(Platform.NA, summoner.getId());
for(LeaguePosition league : leagues){
int wins = league.getWins();
}
`
Note that this iterates over all your leagues. If you want wins for a specific league, you could go like this:
`
import net.rithms.riot.api.endpoints.league.dto.LeagueList;
Summoner summoner = api.getSummonerByName(Platform.NA, username);
Set leagues = api.getLeaguePositionsBySummonerId(Platform.NA, summoner.getId());
int wins = 0;
for(LeaguePosition league : leagues){
if(league.getQueueType().equalsIgnoreCase("RANKED_SOLO_5x5")){
int wins = league.getWins();
break;
}
}
`

Thanks!


[release-v1.15] MT-Broker: return retriable status code based on the state to leverage retries

This is a cherry-pick of https://github.com/knative/eventing/pull/8366

/cherry-pick release-v1.16


How to run the code

Hi,
I am still learning Racket, and the project is interesting, but I do not know how to run it. Could you provide info how to run?

Hi,
Clone the repository.
Open "editor.rkt" in DrRacket.
Click the run button.
But ... I can't remember what state I left the code in.
Don't expect too much.
/Jens Axel

Thanks, it works just fine :)


Support Grails 3

Hi,
Any thoughts/plans on supporting grails 3?  Thanks.

+1

I don't plan to do anything. If some can assist with some investigation and pointers as to what is not working I can make the necessary changes.

Hi,
here is  an updated version of the plugin: https://github.com/hauner/grails-remote-control/tree/grails-3-plugin
I  created a grails 3 plugin (in an empty branch) and moved the old code to it. I can't create a pull request because of starting on an empty branch. Grmpf. ;-)
Ok, with some git magic I created https://github.com/hauner/grails-remote-control/tree/grails-3-plugin-merged-into-master.  I can create a pull request from this one if you like... It would be a code bomb with lots of changes (mostly file adds and deletes because of the changed structure).


Crashloopback on nodes that enforce IMDSv2 token=required

When IMDSv2 gets enforced with token=required then k8s-cloudwatch-adapter gets into CrashLoopBackOff

There are already open issues so closing as duplicate; there is also open PR#66 from @clhuang that has fixed my problem.


Add tests for Find by address, email, tags, phone fields

Codecov Report

Merging #74 (6878015) into master (0e1b03e) will increase coverage by 2.26%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master      #74      +/-   ##
============================================
+ Coverage     67.53%   69.80%   +2.26%
- Complexity      426      438      +12
============================================
  Files            80       80
  Lines          1414     1414
  Branches        149      149
============================================
+ Hits            955      987      +32
+ Misses          418      382      -36
- Partials         41       45       +4

Impacted Files
Coverage Δ

...ess/model/person/TagContainsKeywordsPredicate.java
21.42% <0.00%> (+21.42%)
:arrow_up:

...s/model/person/EmailContainsKeywordsPredicate.java
42.85% <0.00%> (+42.85%)
:arrow_up:

...s/model/person/PhoneContainsKeywordsPredicate.java
42.85% <0.00%> (+42.85%)
:arrow_up:

...model/person/AddressContainsKeywordsPredicate.java
42.85% <0.00%> (+42.85%)
:arrow_up:

.../seedu/address/logic/parser/FindCommandParser.java
100.00% <0.00%> (+60.60%)
:arrow_up:

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

LGTM 🥇


OpenOCD fails with Atmel ICE probe

Description
OpenOCD fails to launch with an Atmel ICE probe and custom board equipped with a SAMD51G18.
Flash, erase and debug session can be launched when using MPLABX or ATMEL STUDIO with the Atmel probe.
I am able to launch debug session with gdb and OpenOCD when using an STM32F4-Disco (STM32F407 and Stlink).
I have tried to reduce speed of the adapter from its initial 2000 kHz to 500kHz/50kHz/20kHz and even 2kHz.
Steps to Reproduce
openocd -d3 -f myboard_samd51.cfg
Content of "myboard_samd51.cfg":
source [find interface/cmsis-dap.cfg]
transport select swd
cmsis_dap_vid_pid 0x03eb 0x2141
set CHIPNAME samd51g18a
source [find target/atsame5x.cfg]
reset_config srst_only
Expected behaviour:
I expect to be able to launch a command line gdb (arm-none-eabi) session using "target extended-remote localhost:3333"
Actual behaviour:
I end up with following extracted message from OpenOCD when using debug level 3:
Debug: 214 506 cmsis_dap_usb.c:730 cmsis_dap_swd_read_process(): SWD ack not OK @ 0 JUNK
Debug: 215 511 command.c:626 run_command(): Command 'dap init' failed with error code -4
User : 216 513 command.c:692 command_run_line():
Debug: 217 515 command.c:626 run_command(): Command 'init' failed with error code -4
User : 218 517 command.c:692 command_run_line():
Debug: 219 519 target.c:1978 target_free_all_working_areas_restore(): freeing all working areas
Debug: 220 523 cmsis_dap_usb.c:932 cmsis_dap_swd_switch_seq(): SWD-to-JTAG
Versions

OpenOCD version: 0.10.0-14
operating system: Windows 10

Thank you for your bug report, but please enter it via the OpenOCD support channels, I am only packing the upstream sources.
This tracker is only for issues related to packing, not related to functionality.

@Binuton, just curious, when you entered the bug, didn't you get a message redirecting functional issues to the OpenOCD support channels?

@ilg-ul , Sorry ! I got confused because in these support channels, the OpenOCD's dedicated section of the Sparkfun forum is closed.

I don't know about Sparkfun, but the text I used for the issues gives a link to OpenOCD discussions; isn't that link useful?
And anyway, I thought that the text is clear enough that here are expected only issues related to building packing OpenOCD, not related to functionality. Isn't that text clear enough?
If the text is not clear, please suggest improvements.


Paypal Checkout Plugin does not work

PHP Version
8.0
Shopware Version
<IP_ADDRESS>
Expected behaviour
A customer can pay with Paypal (after I have installed the Paypal Checkout Plugin)
Actual behaviour
I have set up the PayPal plugin with PayPal Checkout. This system is apparently the successor of Paypal Plus. With this I have a big problem: No payments work anymore.
The following error message is displayed with in the log files:
Swag\PayPal\Checkout\Payment\PayPalPaymentHandler::pay (140): Required setting "landingPage" is missing or invalid {"error":"[object] (Swag\\PayPal\\Setting\\Exception\\PayPalSettingsInvalidException(code: 0): Required setting \"landingPage\" is missing or invalid at .../custom/plugins/SwagPayPal/src/OrdersApi/Builder/AbstractOrderBuilder.php:114)"} {"url":"/account/order/update/...","http_method":"POST","server":"...","file":".../custom/plugins/SwagPayPal/src/Checkout/Payment/PayPalPaymentHandler.php","callType":"->"}

In this article it is described that in the paypal plugin settings there is an option to set the landing page. This option does not exist for me:

That is the Paypal Checkout Plugin:

How can I fix this problem?
How to reproduce
Install and setup the Paypal plugin with the new CHECKOUT system (not the old Paypal Plus system). Try to purchase an item with Paypal. Then you see the error message posted above in the log files...

Hi @T3chTobi,
somehow you are missing the landingPage setting, which should automatically be set during installation of the plugin (or on Update to Version > 2.0.0.
Unfortunately, there is a bug, that the field disappears, if no settings is set. Maybe, you could set the setting
SwagPayPal.settings.landingPage with the value NO_PREFERENCE manually? Alternatively, try to reinstall the plugin.
In the meantime, for the disappearing field, I have created a ticket in our issue tracker: https://issues.shopware.com/issues/PPI-637, I will therefore close the issue here.

Thank you for your feedback!
Where and how can I access the system config?

To add some context: This key SwagPayPal.settings.landingPage is not inside the sytem_config table inside the sql database. Should I add this key?

Yes, exactly, add the settings key with the column sales_channel_id being null (therefore the default for all Sales Channels)

Thank you, it worked!


TSC Meeting #26 2020-06-17 20:00 UTC

Agenda

Updates on OpenJS Foundation transition from Tobie and updates on OpenJS World from Jory.
Continued conversation with Kasiana
add topics here
Review TSC issue backlog
Review TSC-tagged issues (toggle to "open" after checking for recently "closed" items)

@ampproject/tsc
@tobie Can you specify AC attendees?

Tobie updates on OpenJS Foundation transition
OpenJS World info

TSC members should be sure to register: https://events.linuxfoundation.org/openjs-world/features/openjs-collaborator-summit/
For collab summit: Use https://collabsummit.qiqochat.com
For panel: Joey will be managing Zoom. Panel members just need to log in.

More time with Kasiana

Updating notes to reflect TSC's discussion concerning Kasiana McLenaghan's nomination to join the AMP TSC and outcomes. The TSC reached consensus to invite Kasiana to join the TSC, and Kasiana subsequently accepted.


SEVERE [main] org.apache.catalina.startup.HostConfig.beforeStart Unable to create directory for deployment: [/usr/local/tomcat/conf/Catalina/localhost] Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/myapp]]

When running a tomcat Docker image, this error appears, despite the container seems to go on with the execution:
SEVERE [main] org.apache.catalina.startup.HostConfig.beforeStart Unable to create directory for deployment: [/usr/local/tomcat/conf/Catalina/localhost] Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/myapp]]
Steps to reproduce:
Distributor ID: Ubuntu
Description: Ubuntu 20.04.5 LTS
Release: 20.04
Codename: focal
Docker version 20.10.23, build 7155243
With the Docker image:
FROM tomcat:10.1.25-jdk17

#RUN mkdir -p /usr/local/tomcat/conf/Catalina/localhost #Hardcoding this privilege will obviously solve the problem

ADD ./asapianpr/asapianpr.war /usr/local/tomcat/webapps/
ADD ./asapianpr/ROOT /usr/local/tomcat/webapps/ROOT
RUN chown -R 8877:8877 /usr/local/tomcat/webapps/
RUN chmod -R g+rwx /usr/local/tomcat/webapps/

RUN chown -R 8877:8877 /usr/local/tomcat/temp/
RUN chmod -R g+rwx /usr/local/tomcat/temp/

RUN chown -R 8877:8877 /usr/local/tomcat/work/
RUN chmod -R g+rwx /usr/local/tomcat/work/

RUN mkdir -p /usr/local/tomcat/config
ADD ./asapianpr/config/asapianpr.settings /usr/local/tomcat/config/
RUN chown -R 8877:8877 /usr/local/tomcat/config/
RUN chmod -R g+rwx /usr/local/tomcat/config/

ADD ./setenv.sh /usr/local/tomcat/bin
RUN chown -R 8877:8877 /usr/local/tomcat/bin/
RUN chmod -R g+rwx /usr/local/tomcat/bin/

ENV TZ="Europe/Rome"

RUN useradd -ms /bin/bash -u 8877 user

USER user

EXPOSE 8080

CMD ["catalina.sh", "run"]

This seems to be a known old problem: #128 and #209 .

As far as I understand tomcat, we wouldn't want the conf directory writeable by the running user, since that could be a security concern. So, creating the configuration directories that your app needs should be done in your Dockerfile.
Though I would guess that if you're not putting any configuration in there, then they are probably not relevant and createDirs could be disabled in the server.xml. 🤷


docs: add some details to CONTRIBUTING.md

I'm trying to take a pass across all the docs.  1. trying to enable more contributions and possibly another maintainer or two; and 2. preparing for hacktoberfest.  This is the start.


Adds getenvoy installed to list installed versions

Before, we only had a command to know the available versions. This tells
us what's installed. Later, we can print out which is the default
version.
Rationale for "installed" is that it is intuitive alongside "install" vs other options. Also, the fact that "getenvoy" is not an env-based name makes it look nicer (IMHO)
Ex.
getenvoy versions (existing command)
getenvoy install 1.18.3 (existing command)
getenvoy installed (new command)

Vs. Mixing different output based on a flag like pyenv install
pyenv install -l
pyenv install  3.9.5
pyenv versions

Vs. not really describing versions are the thing 'ls'ed like nvm
nvm ls-remote
nvm install v16.2.0
nvm ls

Thanks @mathetake much less code now, except tests where there should be more :D


clientcmd: ConfirmUsable panics on invalid kubeconfig

Repro steps: Create a .kube/config with a "user" pointing to a user that doesn't exist.
Expected result: Get a validation error
Actual result:
There are two different ConfirmUsable methods, and they have different behaviior.
The first one:
https://github.com/kubernetes/client-go/blob/master/tools/clientcmd/client_config.go#L395
discards the error, and continues successfully. Downstream, kubectl will prompt for a username.
The second one:
https://github.com/kubernetes/client-go/blob/master/tools/clientcmd/validation.go#L182
panics with this stack trace:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x5010180]

goroutine 1 [running]:
k8s.io/client-go/tools/clientcmd.ConfirmUsable({{0x0, 0x0}, {0x0, 0x0}, {0x0, 0xc00055a750}, 0xc00055a780, 0xc00055a7b0, 0xc00055a7e0, {0xc000172da0, ...}, ...}, ...)
        k8s.io/client-go@v0.23.6/tools/clientcmd/validation.go:207 +0x480
github.com/tilt-dev/tilt/internal/k8s.ProvideAPIConfig({0x6f5d2a0, 0xc000520a00}, {0x0, 0x0}, {0x0, 0x0})
        github.com/tilt-dev/tilt/internal/k8s/env.go:46 +0x218

What's the right behavior here? I'm happy to send a fix but unclear what the right behavior is.
Original bug report: https://github.com/tilt-dev/tilt/issues/5831 (we don't know how the user got an invalid config, we're several steps removed from the original bug report)

ah, i was wrong, the first one doesn't continue successfully. i know how to fix!


Add links for batch 2021 CSE/CSY

follow the same structure, and add new keys inside backup.json to support 2021 batch too

i would like to work on this issue. kindly assign this to me.


Python 3.6? 3.8? Catalina install, R error 951, 951, 2290, 2649

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

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): nope
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): macOS Catalina 10.15.5 on MacBook Pro (Retina, 13-inch, Early 2015) 2.7 GHz Dual-Core Intel Core i5 8 GB 1867 MHz DDR3
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary):
TensorFlow version (use command below): v2.2.0-rc4-8-g2b96f3662b 2.2.0
Python version:  3.8.3
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version:
GPU model and memory:

You can collect some of this information using our environment capture
script
You can also obtain the TensorFlow version with:

TF 1.0: python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)"
TF 2.0: python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)"

Describe the current behavior
Below is the full code. When I run the 489 line the following error appears.
I have installed Python from terminal using  your guide here. I have installed KERAS for R and it installed python 3.6 in its own bin, all the files are there.
I'm a bit confused as I'm not sure which version I should use here and where. I would start with a fresh laptop install if needed to make this work. I have similar issues on Windows tho (another issue already discussed).
Any idea? Error message below here
Epoch 1/50
7/7 [==============================] - ETA: 0s - loss: 0.5326 - categorical_accuracy: 0.7778
Error in py_call_impl(callable, dots$args, dots$keywords) :
ValueError: in user code:
/Users/axeldrioli/Library/r-miniconda/envs/r-reticulate/lib/python3.6/site-packages/tensorflow/python/keras/engine/training.py:941 test_function  *
    outputs = self.distribute_strategy.run(
/Users/axeldrioli/Library/r-miniconda/envs/r-reticulate/lib/python3.6/site-packages/tensorflow/python/distribute/distribute_lib.py:951 run  **
    return self._extended.call_for_each_replica(fn, args=args, kwargs=kwargs)
/Users/axeldrioli/Library/r-miniconda/envs/r-reticulate/lib/python3.6/site-packages/tensorflow/python/distribute/distribute_lib.py:2290 call_for_each_replica
    return self._call_for_each_replica(fn, args, kwargs)
/Users/axeldrioli/Library/r-miniconda/envs/r-reticulate/lib/python3.6/site-packages/tensorflow/python/distribute/distribute_lib.py:2649 _call_for_each_replica
    return fn(*args, **kwargs)
/Users/axeldrioli/Library/r-miniconda/envs/r-reticulate/lib/python3.6/site-packages/tensorflow/python/keras/e

Describe the expected behavior
Standalone code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate
the problem. If possible, please share a link to Colab/Jupyter/any notebook.
title: "Detection, Extraction and Classification of Bird and Bat Vocalizations in R"
author: "Francois Fabianek, Jean Marchal"
date: "2018 October 30th"
output:
rmarkdown::html_vignette:
fig_caption: yes
number_sections: yes
toc: yes
toc_depth: 4
rmarkdown::pdf_document:
fig_caption: yes
number_sections: yes
toc: yes
toc_depth: 4
vignette: >
%\VignetteIndexEntry{Tutorial: Detection, Extraction and Classification of Bird and Bat Vocalizations in R}
%\VignetteEncoding{UTF-8}
%\VignetteEngine{knitr::knitr}

Load the necessary packages
Make sure you have the latest version of the packages:
install.packages("bioacoustics")
# The bioacoustics package may also be installed from GitHub using devtools as follows:
devtools::install_github("wavx/bioacoustics", build_vignettes = TRUE)
install.packages("warbleR")
install.packages("dplyr")
install.packages("magrittr")
install.packages("randomForest")

# Load the packages
library(warbleR)
library(bioacoustics)
library(dplyr)
library(tools)
library(randomForest)
library(magrittr)

Load audio files
We can use the quer_xc() function from warbleR to download bird vocalizations from Xeno-Canto: https://www.xeno-canto.org/
We are going to choose calls from Catharus bicknelli, songs from Passerella iliaca and Setophaga magnolia recorded in the United States and Canada.
We will filter only "A" quality recordings, then, pick up only the first nine, and merge all the metadata into a single "df" data frame. This data frame will be used to download MP3 files in your working directory directly from Xeno-Canto with the quer_xc() function:
df1 = quer_xc(qword ='Catharus bicknelli type:call cnt:"United States"', download = FALSE)
df1 = df1[df1$Vocalization_type=="call",]
df1 = df1[df1$Quality=="A",]
df1 = df1[1:9,]

df2 = quer_xc(qword ='Setophaga magnolia type:song cnt:"Canada"', download = FALSE)
df2 = df2[df2$Quality=="A",]
df2 = df2[1:9,]

df3 = quer_xc(qword ='Passerella iliaca type:song cnt:"Canada"', download = FALSE)
df3 = df3[df3$Vocalization_type=="song",]
df3 = df3[df3$Quality %in% c("A", "B"),]
df3 = df3[1:9,]
df3 <- df3 %>%
select(-("Other_species8"))
df3
df = rbind(df1,df2,df3)
rm(df1,df2,df3)

# Visualize your data frame
View(df)
# We will work in the R temp directory
wd <- tempdir()
# Create a data directory if it does not exist
data_dir <- file.path(wd, "data")
if(!dir.exists(data_dir))
  dir.create(data_dir)
# Download the MP3 files into your data directory
quer_xc(X = df, download = TRUE, path = data_dir)

Now that we have recordings stored in the data directory, we can read one of them to look at its structure and content.

CATBIC <- read_audio(file.path(data_dir, "Catharus-bicknelli-54866.mp3"))
CATBIC

We can see that the MP3 file has been converted into a Wave object with 7551360 samples, a duration of 157.32 seconds, a sampling rate of 48000 Hz, a bit depth of 16 bits, and that it contains one channel (mono, stereo being two channels).
Remember that you just have to divide the number of samples by the sampling rate to retrieve the duration (s) of an audio file.

Extract GUANO metadata
GUANO stands for the "Grand Unified Acoustic Notation Ontology" and means to be a universal, extensible, open metadata format for bat (ultrasonic) and non-bat (audible, infrasonic) acoustic recordings more here. GUANO format is now embeded directly in the WAV files generated from most Pettersson, Wildlife Acoustics, Titley Scientific acoustic recorders. It is possible to extract the metadata and GUANO embedded in the WAV file by using the metadata() function.
metadata(CATBIC)

Now that we have explored a WAV file, we will use the Fast Fourrier Transform (FFT) to compute a frequency-time representation of the recording, called a spectrogram. A spectrogram being the representation of the spectrum of frequencies in a recording as they vary through time. This representation, although not optimal, is still commonly used to detect animal vocalizations and extract acoustic features useful for classification with the purpose of animal identification.

Plot audio files
There are several options to display animal vocalizations in audio files with R. You can use both spectro() or fspec() functions to generate spectrograms with bioacoustics. fspec() generates only a matrix of the spectrogram, and thus has to be used with the image() function to display the spectrogram. It is also possible to use the spectro() function in Seewave.
Next, we will search manually and display an audio event (here, a bird vocalization) from a recording of Catharus bicknelli. To display a Region Of Interest (ROI) of the recording we will use temporal and frequency filters. Lets start with a temporal slice from 1 to 10 secs and a FFT size of 512 sample
# Set plot margins to 0
par(mar = c(0, 0, 0, 0), oma = c(0, 0, 0, 0))
# Display with spectro()
ticks <- c(from = 1000, to = 20000, by = 1000) # frequency tick marks from 1 to
# 20 kHz, and steps at each 1 kHz
temp_slice <- c(from = 1, to = 10) # in seconds
spectro(CATBIC, tlim = temp_slice, FFT_size = 512, ticks_y = ticks)

Lets display spectrograms with various time / frequency limits (with tlim= and flim= arguments). You can also play with other arguments in spectro() and fspec() functions such as the percent of overlap between two FFTs (with FFT_overlap=) and various FFT resolutions (with FFT_size=). Note that the arguments are briefly explained in the documentation of each function:
# Access the arguments of the spectro function
?spectro
?fspec

First, lets shorten the temporal axis from 2 to 3.5 secs to work on a shorter time window and compare the outputs from spectro() and fspec()  functions. Note that spectrograms can also be generated automatically while using the detection functions from bioacoustics. We will explore that in details in section 4.1.
# Set plot margins to 0
par(mar = c(0, 0, 0, 0), oma = c(0, 0, 0, 0))
# Display the spectrogram with spectro()
ticks <- c(from = 1000, to = 20000, by = 1000) # frequency tick marks from 1 to
# 20 kHz, 1 kHz steps
temp_slice <- c(from = 2, to = 3.5) # in seconds
spectro(CATBIC, tlim = temp_slice, FFT_size = 512, ticks_y = ticks)
# fspec() gives you the spectrogram matrix with energy values (dB)
spec_mx <- fspec(CATBIC, tlim = temp_slice, FFT_size = 512, rotate = TRUE)
# You can display the spectrogram with image()
image(spec_mx, xaxt = "n", yaxt = "n")

The tick marks on the (frequency) y-axis were defined in the spectro() function starting from 1 to 20 kHz with an interval at each 1 kHz. The FFT size was 512 samples with an overlap between two FFT windows set by default at 0.875. Now try these settings: FTT size = 256, 1024 and 2048; FFT overlap = 0.3, 0.6, 0.9...
Another interesting thing to perform with the fspec outputs, is to implement your own set of filters. Lets try to reduce the background noise from a spectrogram with a narrower time and frequency bandwidth:
temp_slice <- c(from = 2.5, to = 3.5)
freq_slice <- c(from = 1500, to = 20000)
spec_o <- fspec(CATBIC, tlim = temp_slice, flim = freq_slice, FFT_size = 512, rotate = TRUE)
## min and max (range) dB intensity
range(spec_o) # -120 (min) to 0 dB (max)
# Note that the tolerance of your recorders depends on the number of bits.
# 16-bit recorders offer only around -96 dB tolerance and sound pressure above
# this level is clipped to 0 dB.
## Let's try a filter by mean + sd intensity
spec_f <- fspec(CATBIC, tlim = temp_slice, flim = freq_slice, FFT_size = 512, rotate = TRUE)
spec_f[spec_f < mean(spec_f) + sd(spec_f)] <- -120
# Works well with high intensity audio events, but leads to
# false negatives (missed events) otherwise.
par(mar = c(0, 0, 0, 0), oma = c(0, 0, 0, 0))
image(spec_o, xaxt="n", yaxt="n")
image(spec_f, xaxt="n", yaxt="n")

The use of filters to detect and extract audio events
The functions used to detect and extract audio events in a recording also rely on "generic" filters based on frequency and duration, along with other "specific" filters. Let's take a quick look at the generic filters available in the threshold_detection() and blob_detection() functions:

High Pass (HPF) and Low Pass filters (LPF) can be employed to reduce the amount of unwanted noise in the recording or to track particular audio events within a narrower frequency bandwidth than the recording sampling rate. Frequencies below the HPF and above the LPF cutoff are greatly attenuated. These frequency filters can be set using the HPF= and LPF= arguments in the threshold_detection() and blob_detection() functions.
Minimum and maximum duration of an audio event, and a minimum time between two audio events also help reduce the amount of unwanted noise, or track a particular audio event within a narrower temporal window. These temporal filters can be set using the min_dur=, max_dur=, and TBE= arguments in both threshold_detection() and blob_detection() functions.
Other set of filters are specific to each detection function and will be defined while working with these functions on bird vocalizations.

Detect and extract audio events in a recording
Threshold detection
Let's start with the threshold_detection() function on a recording containing calls from Catharus bicknelli. This function is an amplitude threshold detector that picks up audio events above the Signal to Noise Ratio (SNR). It combines several algorithms for detection, filtering and audio feature extraction. We will play with the arguments of this function to understand their implication in the detection and extraction of audio events (here, calls of Catharus bicknelli).
# Access the arguments of the threshold_detection function
?threshold_detection

# Set each argument according to the targeted audio events
TD <- threshold_detection(
  CATBIC, # Either a path to an audio file (see ?read_audio), or a Wave object
  threshold = 12, # 12 dB SNR sensitivity for the detection algorithm
  time_exp = 1, # Time expansion factor of 1. Only needed for bat recordings.
  min_dur = 140, # Minimum duration threshold of 140 milliseconds (ms)
  max_dur = 440, # Maximum duration threshold of 440 ms
  min_TBE = 10, # Minimum time window between two audio events of 10 milliseconds
  max_TBE = 5000, # Maximum time window between two audio events, here 5 seconds
  EDG = 0.996, # Temporal masking with Exponential Decay Gain from 0 to 1
  LPF = 10000, # Low-Pass Filter of 10 kHz
  HPF = 1000, # High-Pass Filter of 1 kHz
  FFT_size = 256, # Size of the Fast Fourrier Transform (FFT) window
  FFT_overlap = 0.875, # Percentage of overlap between two FFT windows

  start_thr = 25, # 25 dB threshold at the start of the audio event
  end_thr = 30, # 30 dB threshold at the end of the audio event
  SNR_thr = 10, # 10 dB SNR threshold at which the extraction of the audio event stops
  angle_thr = 45, # 45° of angle at which the extraction of the audio event stops
  duration_thr = 440, # Noise estimation is resumed after 440 ms
  NWS = 1000, # Time window length of 1 s used for background noise estimation
  KPE = 1e-05, # Process Error parameter of the Kalman filter (for smoothing)
  KME = 1e-04, # Measurement Error parameter of the Kalman filter (for smoothing)
  settings = FALSE, #  Save on a list the above parameters set with this function
  acoustic_feat = TRUE, # Extracts the acoustic and signal quality parameters
  metadata = FALSE, # Extracts on a list the metadata embedded with the Wave file
  spectro_dir = file.path(tempdir(), "Spectros"), # Directory where to save the spectrograms
  time_scale = 1, # Time resolution of 2 ms for spectrogram display
  ticks = TRUE # Tick marks and their intervals are drawn on the y-axis (frequencies)
)
# Get the number of extracted audio events
nrow(TD$data$event_data)

Let the HTML page open with the 57 spectrograms (each representing an extracted audio event). These settings will be our benchmark for the number of audio events that can be extracted with the threshold_detection() function. In the following exercise, you will try to reach or beat this number by exploring different combinations of parameters for each argument of the function.
# Let's try various settings, starting with 1024 FFT size instead of 256.
TD <- threshold_detection(
  CATBIC, threshold = 12, time_exp = 1, min_dur = 140, max_dur = 440,
  min_TBE = 10, max_TBE = 5000, EDG = 0.996, LPF = 10000, HPF = 1000,
  FFT_size = 1024, FFT_overlap = 0.875, start_thr = 25, end_thr = 30,
  SNR_thr = 10, angle_thr = 45, duration_thr = 440, NWS = 1000,
  KPE = 1e-05, KME = 1e-04, settings = FALSE, acoustic_feat = TRUE,
  metadata = FALSE, spectro_dir = file.path(tempdir(), "Spectros"), time_scale = 1,
  ticks = c(1000, 10000, 1000) # Tick marks from 1 to 10 kHz with 1 kHz interval
)
# Take a look at the spectrograms and compare them with the previous extraction.
nrow(TD$data$event_data) # Only three audio events!

We will play with various detection thresholds: end_thr, SNR_thr, angle_thr, KPE and KME parameters. Try to reach 66 spectrograms extracted with a contour (i.e., Kalman curve) that best matches the audio event (answer below). The FFT size will be set at 256 samples.
CATBIC <- read_audio(file.path(data_dir, "Catharus-bicknelli-54866.mp3"))
TD <- threshold_detection(
  CATBIC, threshold = 12, time_exp = 1, min_dur = 140, max_dur = 440, min_TBE = 10,
  max_TBE = Inf, EDG = 0.996, LPF = 10000, HPF = 1000, FFT_size = 256, FFT_overlap = 0.875,
  start_thr = 22, end_thr = 30, SNR_thr = 10, angle_thr = 125, duration_thr = 440, NWS = 1000,
  KPE = 1e-05, KME = 1e-05, settings = FALSE, acoustic_feat = TRUE, metadata = FALSE
)

Lets take a look at the extracted audio features. Note that all the features are described and explained in the package vignette (vignette("bioacoustics")).
# Acoustic features are stored in a data frame called event_data,
# stored by order of detection.
View(TD$data$event_data) # Contains the filename and the time of detection in the
                         # recording, and 26 extracted features.

The location (in number of samples) of the audio event in the recording is saved in a list.
# Start and end of the 5th extracted audio event (in samples)
c(TD$data$event_start[[5]], TD$data$event_end[[5]])
# Remember you just have to divide by the sample rate to retrieve the time (s)
c(TD$data$event_start[[5]], TD$data$event_end[[5]]) / slot(CATBIC, "samp.rate")

The amplitude (dB) and frequency (Hz) tracks (or bins) are also saved in a list. These can be used to build your own acoustic features.
par(mar = c(1,1, 1, 1), oma = c(1, 1, 1, 1))
# Amplitude track of the 5th audio event
plot(TD$data$amp_track[[5]], type = "l")
# Frequency track of the 5th audio event
plot(TD$data$freq_track[[5]], type = "l")

The whole energy and frequency content can also be used to classify audio events instead of using acoustic features that may result in a loss of information. We will get there soon, but first, lets discover another detection function, here applied on echolocation calls of bats.
Blob detection
The blob_detection() function will be used on a recording containing 10 bat echolocation calls from the Myotis genus. This function combines several image processing, filtering and image feature extraction. A blur and contrast boost is applied after mean background subtraction to increase the SNR of the audio event. The blob detection algorithm is applied on the processed spectrogram to detect the ROI (i.e., each preprocessed audio event). The blob detector simultaneously labels the connected FFT values and their contours in the spectrogram. Labelling is done in a single pass over the spectrogram, while contour points are revisited more than once and up to four times (see Chang et al., 2004). We will play with the arguments of this function to extract bat echolocation calls.
### Access the arguments of the blob_detection function
?blob_detection

# Use the bat recording stored in the package
data(myotis)
# Set each argument according to the targeted audio events
BD <- blob_detection(
  myotis, # Either a path to an audio file (see ?read_audio), or a Wave object
  time_exp = 10, # Time expansion factor of 10 for time expanded recordings.
  min_dur = 1.5, # Minimum duration threshold of 1.5 milliseconds (ms)
  max_dur = 80, # Maximum duration threshold of 80 ms
  min_area = 40, # minimum number of 40 pixels in the blob
  min_TBE = 20, # Minimum time window between two audio events of 20 milliseconds
  EDG = 0.996, # Temporal masking with Exponential Decay Gain from 0 to 1
  LPF = slot(myotis, "samp.rate") * 10 / 2, # Low-Pass Filter at the Nyquist frequency
  HPF = 16000, # High-Pass Filter of 16 kHz
  FFT_size = 256, # Size of the Fast Fourrier Transform (FFT) window
  FFT_overlap = 0.875, # Percentage of overlap between two FFT windows
  blur = 2, # Gaussian smoothing function with a factor of 2 for blurring the spectrogram
  bg_substract = 20, # Foreground extraction with a mean filter applied on the spectrogram
  contrast_boost = 20, # Edge contrast enhancement filter of the spectrogram contour
  settings = FALSE, #  Save on a list the above parameters set with this function
  acoustic_feat = TRUE, # Extracts the acoustic and signal quality parameters
  metadata = FALSE, # Extracts on a list the metadata embedded with the Wave file
  spectro_dir = file.path(tempdir(), "Spectros"), # HTML page with spectrograms by order of detection
  time_scale = 0.1, # Time resolution of 2 ms for spectrogram display
  ticks = TRUE # Tick marks and their intervals are drawn on y-axis (frequencies)
)
# Get the number of extracted audio events
nrow(BD$data$event_data)

Do not close the HTML page and tune the FFT size at 512. Lets play with the blur, contrast boost and background subtraction parameters to retrieve a number of 10 extracted echolocation calls.
# Lets try various settings, starting with 512 FFT size instead of 256
BD <- blob_detection(
  myotis, time_exp = 10, FFT_size = 512, settings = FALSE, acoustic_feat = TRUE,
  metadata = FALSE, spectro_dir = file.path(tempdir(), "Spectros"), time_scale = 0.1, ticks = TRUE
)
# Take a look at the spectrograms and compare them with the previous extraction.
nrow(BD$data$event_data) # Only 6 audio events!

Lets take a look at the extracted audio features. All the features are described and explained in the package vignette.
# Acoustic features
head(BD$data)

This data frame is, for now, the only available set of acoustic features with the blob_detection() function. However, it combines well with the fspec() to make image analysis.
Now that we have played with both detection functions with bird and bat vocalizations, lets go back to birds to explore batch analysis (i.e., with several recordings) and audio event classification.

Batch analysis and classification
In this section, we will learn how to analyze several recordings at the same time and train a simple classifier (with training set) that will be used to classify new data (i.e., the test set).
We will work with 27 recordings of Catharus-bicknelli (n = 9), Passerella iliaca (n = 9), and Setophaga-magnolia (n = 9). We will split the extracted audio events in a 70 % training set (called "Train") and 30 % test set (called "Test").
Our target audio events are calls of Catharus-bicknelli. We will use the threshold detector previously configured for this species (see section 4.1.1).
# Get the filepath for each MP3 file
files <- dir(data_dir, recursive = TRUE, full.names = TRUE, pattern = "[.]mp3$")
# Detect and extract audio events
TDs <- setNames(
  lapply(
    files,
    threshold_detection,
    threshold = 12, min_dur = 140, max_dur = 440, min_TBE = 50, max_TBE = Inf,
    LPF = 8000, HPF = 1500, FFT_size = 256, start_thr = 30, end_thr = 20,
    SNR_thr = 10, angle_thr = 125, duration_thr = 400, spectro_dir = NULL,
    NWS = 2000, KPE = 0.00001, time_scale = 2, EDG = 0.996
  ),
  basename(file_path_sans_ext(files))
)
# Keep only files with data in it
TDs <- TDs[lapply(TDs, function(x) length(x$data)) > 0]
# Keep the extracted feature and merge in a single data frame for further analysis
Event_data <- do.call("rbind", c(lapply(TDs, function(x) x$data$event_data), list(stringsAsFactors = FALSE)))
nrow(Event_data) # 355 audio events extracted
# Compute the number of extracted CATBIC calls
sum(startsWith(Event_data$filename, "Cat"))
# Add a "Class" column: "CATBIC" vs. other species of birds "OTHERS"
classes <- as.factor(ifelse(startsWith(Event_data$filename, "Cat"), "CATBIC", "OTHERS"))
Event_data <- cbind(data.frame(Class = classes), Event_data)
# Get rid of the filename and time in the recording
Event_data$filename <- Event_data$starting_time <- NULL

We now have the necessary dataset to train a classifier: we will train a Random Forest on the training set and validate the results on the test set.
# Split the data in 60% Training / 40% Test sets
train <- sample(1:nrow(Event_data), round(nrow(Event_data) * .6))
Train <- Event_data[train,]
test <- setdiff(1:nrow(Event_data), train)
Test <- Event_data[test,]
# Train a random forest classifier
set.seed(666)
rf <- randomForest(Class ~ duration + freq_max_amp + freq_max + freq_min +
                     bandwidth + freq_start + freq_center + freq_end +
                     freq_knee + fc + freq_bw_knee_fc + bin_max_amp +
                     pc_freq_max_amp + pc_freq_max + pc_freq_min +
                     pc_knee + temp_bw_knee_fc + slope + kalman_slope +
                     curve_neg + curve_pos_start + curve_pos_end +
                     mid_offset + smoothness + snr + hd + smoothness,
                   data = Train, importance = FALSE, proximity = FALSE,
                   replace = TRUE, ntree = 4000, mtry = 4)
# Look at the confusion matrix of the training set
rf$confusion # looks good, but...
# Let's make predictions with our classifier on a test set
table(Test[,1], predict(rf, Test[,-1], type = "response")) # not bad!
# To look at the predictions
head(predict(rf, Test[,-1], type = "prob"))

We are now able to use this simple, but proven robust, classifier to detect new calls of your target species.

Deep learning classification with the R interface to Keras
We will use Keras in R which requires to install several packages in Python
Guidelines to install Keras properly in R are available here
Lets now explore a ConvNet approach available on Keras. We will follow the approach of Hatami et al. (2017) to analyze time series as images with 2D ConvNets. The difference is that we will only perform max pooling at the last layer before activation and add batch normalization with dropouts at each layer.
devtools::install_github("rstudio/keras")
# Run if keras is installed on your machine
library(keras)
# Build the training set
Y_train <- to_categorical(as.integer(Train[,1]) - 1) # One hot encoding
# X as matrix
X_train <- as.matrix(Train[,-1])
# Build the test set
Y_test <- to_categorical(as.integer(Test[,1]) - 1)
Y_test <- Y_test[,-1]
X_test <- as.matrix(Test[,-1])
# Build the sequential model
mod0 <- keras_model_sequential()
mod0 %>%
  # Input shape layer = c(samples, rows, cols, channels)
  layer_reshape(input_shape=ncol(X_train),target_shape=c(1,1,ncol(X_train))) %>%
  # First conv 2d layer with 128 neurons, kernel size of 8 x 8 and stride of 1 x 1
  layer_conv_2d(128, c(8,8), c(1,1), padding='same') %>%
  layer_batch_normalization() %>%
  layer_activation("relu") %>%
  layer_dropout(0.2) %>%
  # Second conv 2d layer with 256 neurons, kernel size of 5 x 5 and stride of 1 x 1
  layer_conv_2d(256, c(5,5), c(1,1), padding='same') %>%
  layer_batch_normalization() %>%
  layer_activation("relu") %>%
  layer_dropout(0.2) %>%
  # Third conv 2d layer with 128 neurons, kernel size of 3 x 3 and stride of 1 x 1
  layer_conv_2d(128, c(3,3), c(1,1), padding='same') %>%
  layer_batch_normalization() %>%
  layer_activation("relu") %>%
  layer_dropout(0.2) %>%
  # Average pooling layer
  layer_global_average_pooling_2d() %>%
  # Activation output layer with 2 classes
  layer_dense(units = ncol(Y_train),  activation='softmax')
# Model compile
mod0 %>% compile(loss = 'categorical_crossentropy',
                 optimizer = "adam",
                 metrics = "categorical_accuracy")
# Add a callback to reduce the learning rate when reaching the plateau
reduce_lr <- callback_reduce_lr_on_plateau(monitor = 'loss', factor = 0.5,
                                           patience = 50, min_lr = 0.0001)
# Start learning
mod0 %>% fit(X_train, Y_train, batch_size = 32, epochs = 50,
             validation_data = list(X_test, Y_test),
             verbose = 1, callbacks = reduce_lr)
# Score on the test set
score <- mod0 %>% evaluate(X_test, Y_test, batch_size = 32)
score

Lets work a bit with the output to build a confusion matrix and use the predict function on the test set.
# Look at predictions and build a confusion matrix
Pred <- as.factor(predict_classes(mod0, X_test, batch_size = 32, verbose = 1))
table(Y_test[,2], Pred)
# To look at the prediction values
Prob <- round(predict_proba(mod0, X_test, batch_size = 32, verbose = 1), 2)

We obtained a val_loss < 0.2 and val_categorical_accuracy > 0.94 which is acceptable, but not better than the simplest RF approach we used in section 3.2.
Using only 26 acoustic features as model inputs instead of the whole spectrogram content (energy and frequency distribution, and harmonics) probably reduced the performances of the CNN model.
This tutorial is now complete. Comments and feedback are welcome:
Francois<EMAIL_ADDRESS>Jean<EMAIL_ADDRESS>www.wavx.ca

Other info / logs Include any logs or source code that would be helpful to
diagnose the problem. If including tracebacks, please include the full
traceback. Large logs and files should be attached.

@spatialaudiolabs,
Looks like this issue is a duplicate of #40099. Can you please close this issue since it is already being tracked there. Thanks!

Hi Amahendrakar
Here I am running on macOS and the output error is actually different. Shouldn't they be treated separately?

@spatialaudiolabs,
Please take a look at these comments from similar issues and let us know if it helps.
Link 1, Link 2
Thanks!


docs: RTIO documentation updates

Updates docs to account for the large number of changes that have occured since the initial documentation was written.

I can rebase this on top of what you've done in #60646 as this is maybe a bit more significant of a change

Related comment https://github.com/zephyrproject-rtos/zephyr/pull/57823#issuecomment-1644062892

@yperess I can rebase this on top of what you've done in #60646 as this is maybe a bit more significant of a change

Sorry, I missed this when I did the other doc change. I'll close it.


Add translations to tvshows

@Naliath, looks good?

:+1:

Merge it in. Heading out. :)

I'll have to do it manually it seems


High cpu usage while hitting  quickly

please complete the following information:

OS version: [e.g. Win 10, Mac Catalina]	Linux Mint
Editor: [e.g. vscode, intelij, sublime]	vim + coc-tabnine
Editor version:	0.5-dev
Programming language: [e.g. js, ts, c++]	html
TabNine extension version:

If the issue is related to TabNine failure, please provide log files:
Type TabNine::config in your editor, the logs are located at the bottom of the page.
Issue Details:

The cpu usage can arrive at 600%, and lowest I have is around 80%, there is certainly an issue or the impletation of coc-tabnine isn't debounced

The cpu usage can arrive at 600%, and lowest I have is around 80%, there is certainly an issue or the impletation of coc-tabnine isn't debounced


Registering a model tells me "Signatures and sample_input_data both cannot be None"

I'm trying to work through the multi-language embeddings article/code. https://github.com/michaelgorkow/snowflake_huggingface/blob/main/multilanguage_embeddings.ipynb
When I attempt to register the model with
Register the model to Snowflake
snow_model = reg.log_model(
model,
model_name='multilingual_e5_small',
)
It gives me the following error:
SnowflakeMLException                      Traceback (most recent call last)
/usr/local/lib/python3.10/dist-packages/snowflake/ml/_internal/telemetry.py in wrap(*args, **kwargs)
366             try:
--> 367                 res = func(*args, **kwargs)
368             except Exception as e:
5 frames
SnowflakeMLException: ValueError('(2110) Signatures and sample_input_data both cannot be None at the same time for this kind of model.')
The above exception was the direct cause of the following exception:
ValueError                                Traceback (most recent call last)
/usr/local/lib/python3.10/dist-packages/snowflake/ml/_internal/telemetry.py in wrap(*args, **kwargs)
387                     raise me.original_exception from None
388                 else:
--> 389                     raise me.original_exception from e
390             else:
391                 return update_stmt_params_if_snowpark_df(res, statement_params)
ValueError: (2110) Signatures and sample_input_data both cannot be None at the same time for this kind of model.
Any ideas?  Thanks!

I just realized something . . . .
I've been using a Jupyter notebook.  Do I need to use a Snowflake notebook instead?
I will try that later today (or as soon as I can get our account set up for Snowflake Notebooks).
Thanks!

Thanks for bringing this up @MWaser ! I updated the example to include the sample-data as input while logging the model. I also made sure to add sentence-transformers as a dependency. Can you pull the new code and test it on your side? It worked in my demo account. :)

THANK YOU for getting back to me so quickly!
That got me one step further . . . only to run into the exact same (previously unmentioned) problem I ran into when I tried the Customize the Model Signature code to get around the "Signatures and sample_input_data both cannot be None" problem

(I've run both with and without the options={"relax_version": False}

I note that there is an issue causing the same error message on the sentence-transformer github (https://github.com/UKPLab/sentence-transformers/issues/1069) -- where they recommend updating the transformers package explicitly.
I'll try that tomorrow -- but can I get a pip list/pip freeze from you to compare package versions for everything?
THANKS!

What's your local sentence-transformers version? Looks like a version issue between your local version and the one available in Snowflake. The provided conda_env.yml uses sentence-transformers==2.2.2. Can you try down/upgrading to that version in your local environment?
The most recent version in Snowflake is 2.7.0 which should also work but I haven't tested it.
You can find the versions available via this SQL:
SELECT PACKAGE_NAME, VERSION
FROM SNOWFLAKE.INFORMATION_SCHEMA.PACKAGES.
WHERE PACKAGE_NAME='sentence-transformers'.
GROUP BY PACKAGE_NAME, VERSION;

All my local versions match the provided conda_env.yml (I'm very careful about such things ;-) )
HOWEVER -- locally, I note that sentence-transformers==2.2.2 loads transformers==4.41.2
WHILE the newest version in SnowPark is transformers==4.37.2
I'll play with versions tomorrow . . . .
Am I correct in assuming that you're using transformers==4.37.2 locally?
Thanks!

SUCCESS!!!  If I install transformers==4.37.2 locally, it registers both the input version and the customized model version perfectly.  You should add that to your conda_env.yaml.
Curious questions:
It seems as if there are three ways to do this:
1. With a Jupyter notebook
2. Using Snowsight
3. With a Snowflake notebook
Have you tried all three?
Do you know the advantages/disadvantages of each?


Streamline Tasks

Both tasks ShellTask and TerminalTask use a happy mix of readonly, xyz | undefined type declarations, and non JS-ish defaults. I'd recommend to clarify things, e.g

Use question mark for types that can be undefined, e.g CompletionItem#insertText
Don't use readonly the model is anyway that VS Code created a disconnected copy of that data providers return
Don't use empty defaults like an empty array or empty object. The JavaScript programmer expects undefined

Regarding undefined and question mark. In TS there is a difference between this: Take the following example:

By using | undefined I wanted to express that a task has an identifier but that undefined is a legal value in which case I will compute one. Same for source. I thought using ? means there can be no identifier / source which is not correct. Using the TS difference I thought is a good thing to do. Any objection to keep this?
Regarding readonly: the idea is that a user needs to create a new task if he wants to change these. But for consistency it makes sense to remove this.
Regarding empty defaults. I thought it is easier to use if you want to set a property or add an argument later. You can write tasks.args.push(....). If the return value can be undefined you need to write something like this:
let args = task.args | [];
args.push(value);
task.args = args;

Same for option literals.
If you feel strong about I will change it, but I thought it makes the API harder to use.

Moving to June.

Addressed in the new API.


Fixed_homepage-responsiveness

Fixed the responsiveness of the Blog section

Fixes: #[44]
Proposed Changes

Blog section fixed

Screenshots

Original
Updated

**

original screenshot**
**

updated screenshot **

Hey @Sugyanee  Great work. Except there is still a horizontal scroll bar and that brings a white space at right when in mobile resolution. For a quick fix, in CSS, set HTML property overflow-x: hidden and then we can perhaps merge it. In the meantime, i am labeling this as hactoberfest accepted so this will still be counted anyway

Hey @Sugyanee Great work. Except there is still a horizontal scroll bar and that brings a white space at right when in mobile resolution. For a quick fix, in CSS, set HTML property overflow-x: hidden and then we can perhaps merge it. In the meantime, i am labeling this as hactoberfest accepted so this will still be counted anyway

Thanks! I have made the changes mentioned. Do check.


could not find com.facebook.react:react-android:0.71.3

New Version
0.61.4
Old Version
0.71.3
Build Target(s)
android
Output of react-native info
System:
OS: macOS 12.2
CPU: (8) arm64 Apple M1
Memory: 95.97 MB / 16.00 GB
Shell: 5.8 - /bin/zsh
Binaries:
Node: 16.19.0 - /opt/homebrew/opt/node@16/bin/node
Yarn: 1.22.19 - /opt/homebrew/bin/yarn
npm: 8.19.3 - /opt/homebrew/opt/node@16/bin/npm
Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
Managers:
CocoaPods: 1.11.3 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 21.4, iOS 15.5, macOS 12.3, tvOS 15.4, watchOS 8.5
Android SDK: Not Found
IDEs:
Android Studio: 2021.2 AI-212.5712.43.2112.8609683
Xcode: 13.4.1/13F100 - /usr/bin/xcodebuild
Languages:
Java: <IP_ADDRESS> - /usr/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 18.2.0 => 18.2.0
react-native: 0.71.3 => 0.71.3
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
Issue and Reproduction Steps
react-native run-android
Output:

What went wrong:
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.

Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
Could not find com.facebook.react:react-android:0.71.3.
Required by:
project

Please provide:

Your android/app/build.gradle
Your android/build.gradle
Your settings/build.gradle
A reproducer project (if possible)

rootProject.name = 'projectname'
apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
include ':app'
includeBuild('../node_modules/react-native-gradle-plugin')
include ':app', ':react-native-code-push'
project(':react-native-code-push').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-code-push/android/app')
include ':react-native-moengage'
project(':react-native-moengage').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-moengage/android')

You setup looks correct to me. Can you create a repro?

I was able to reproduce after copying and pasting the provided files into a new npx react-native init AwesomeProject --version=0.71.3 project.
* What went wrong:
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
> Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
   > Could not find com.facebook.react:react-android:0.71.3.
     Required by:
         project :app
   > Could not find com.facebook.react:hermes-android:0.71.3.
     Required by:
         project :app

I am also facing same issue @SharvanTech5

I'm also suffering this error after updating from 0.70.7 to 0.71.3 using align-deps:
npx @rnx-kit/align-deps --requirements<EMAIL_ADDRESS>--write
This is the complete error:
Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081 -PreactNativeDebugArchitectures=arm64-v8a -PreactNativeArchitectures=arm64-v8a

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine the dependencies of task ':app:mergeDebugAssets'.
> Could not resolve all task dependencies for configuration ':app:debugRuntimeClasspath'.
   > Could not find com.facebook.react:react-native:0.71.3.
     Searched in the following locations:
       - file:/Users/verochan/app-native/node_modules/react-native/android/com/facebook/react/react-native/0.71.3/react-native-0.71.3.pom
       - file:/Users/verochan/app-native/node_modules/jsc-android/dist/com/facebook/react/react-native/0.71.3/react-native-0.71.3.pom
       - file:/Users/verochan/.m2/repository/com/facebook/react/react-native/0.71.3/react-native-0.71.3.pom
       - https://dl.google.com/dl/android/maven2/com/facebook/react/react-native/0.71.3/react-native-0.71.3.pom
       - https://www.jitpack.io/com/facebook/react/react-native/0.71.3/react-native-0.71.3.pom
       -<EMAIL_ADDRESS>     Required by:
         project :app > project :react-native-interactable
         project :app > project :react-native-fs
         project :app > project :intercom_intercom-react-native
         project :app > project :notifee_react-native
         project :app > project :react-native-community_async-storage
         project :app > project :react-native-community_geolocation
         project :app > project :react-native-community_masked-view
         project :app > project :react-native-community_netinfo
         project :app > project :react-native-community_picker
         project :app > project :react-native-bootsplash
         project :app > project :react-native-config
         project :app > project :react-native-device-info
         project :app > project :react-native-get-random-values
         project :app > project :react-native-localize
         project :app > project :react-native-maps
         project :app > project :react-native-pager-view
         project :app > project :react-native-permissions
         project :app > project :react-native-safe-area-context
         project :app > project :react-native-screens
         project :app > project :react-native-sqlite-storage
         project :app > project :react-native-svg
         project :app > project :react-native-vector-icons
         project :app > project :rollbar-react-native
         project :app > project :react-native-flipper
   > Could not find com.facebook.react:react-android:.
     Required by:
         project :app > project :react-native-gesture-handler

On iOS, it's working fine. Any ideas?

Same issue for me after creating a brand new project and starting to migrate all the old code over (due to too many fixes I would have had to do by hand)

I also encountered the same problem and fell back to 0.71.2 OK

@bingaicao in 0.71.2 android and iOS both working fine ?

I'm an android, but you can try

Downgrade to 0.71.2 did not do the cut for me.
Still:
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
> Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
   > Could not find com.facebook.react:react-android:0.71.2.
     Required by:
         project :app
   > Could not find com.facebook.react:hermes-android:0.71.2.
     Required by:
         project :app
   > Could not find com.facebook.react:react-android:0.71.2.
     Required by:
         project :app > project :react-native-firebase_app
         project :app > project :react-native-firebase_messaging
         project :app > project :react-native-picker_picker

@RonRadtke You can clean up the project and rebuild it to ensure that the Gradle is not in offline mode

@bingaicao running a gradlew clean and rebuilding did not help. Running it via react-native start --reset-cache didn't help either

After removing ththe following in android/build.gradle it worked:
...
exclusiveContent {
               filter {
                   includeGroup "com.facebook.react"
               }
               forRepository {
                   maven {
                       url "$rootDir/../node_modules/react-native/android"
                   }
               }
        }
        ...

After version 0.71.0, the local mode is no longer available. The global dependent version needs to be replaced online to ensure that all dependent versions are uniform

@bingaicao Thanks a lot for the Information! I just assumed it is fine since cortinico said it was fine.
@SharvanTech5 you have the same block in that I had to remove.

After removing ththe following in android/build.gradle it worked:
...
exclusiveContent {
               filter {
                   includeGroup "com.facebook.react"
               }
               forRepository {
                   maven {
                       url "$rootDir/../node_modules/react-native/android"
                   }
               }
        }
        ...

Removing this part also makes the project build (until other errors pop up) with 0.71.3

This worked for me also, thanks. There is only a README.md file in that directory $rootDir/../node_modules/react-native/android hence why the not found errors.
"Starting from React Native 0.71, we're not shipping the /android folder inside the React Native NPM package anymore due to sizing constraints on NPM. The Android artifacts are distributed via Maven Central." https://github.com/facebook/react-native/tree/main/android.

This force command in android/build.gradle seems to be forcing the use of 0.71.3 but it doesn't exist at maven repo:
allprojects {
    configurations.all {
        resolutionStrategy {
            force "com.facebook.react:react-native:" + REACT_NATIVE_VERSION
        }
    }
    ...

After commenting only the force line, it took from the version https://mvnrepository.com/artifact/com.facebook.react/react-native/0.71.0-rc.0 and finished building!

After version 0.71.0, the local mode is no longer available. The global dependent version needs to be replaced online to ensure that all dependent versions are uniform

Hello, it's seems to being a conflicting issue for artifactory proxies. I have such situation when I'm able to build it locally but I'm unable to build the project on Jenkins pipeline which is using artifactory proxy and is out of external internet connection.
I can read in @carlosalmonte04 comment that it's getting from maven central. What is the address I should point into to make a proper proxy traffic and allow to download this package?

Hi,
also having this issue, I've compared the gradle files on the upgrade helper and my files and seem to be ok, still can't figure out the solution for this.
These are the buil
android/build.gradle
https://raw.githubusercontent.com/react-native-community/rn-diff-purge/release/0.71.1/RnDiffApp/android/build.gradle
My file
buildscript {
    ext {

        buildToolsVersion = "33.0.0"
        minSdkVersion = 21
        compileSdkVersion = 33
        targetSdkVersion = 33

        // We use NDK 23 which has both M1 support and is the side-by-side NDK version from AGP.
        ndkVersion = "23.1.7779620"
    }
    repositories {
        google()
        mavenCentral()
    }
    dependencies {
        classpath("com.android.tools.build:gradle:7.3.1")
        classpath("com.facebook.react:react-native-gradle-plugin")
        classpath("de.undercouch:gradle-download-task:4.1.2")
        classpath("com.google.gms:google-services:4.3.14")
        classpath("com.google.firebase:firebase-crashlytics-gradle:2.9.1")
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
    }
}

And the app/build.gradle
https://raw.githubusercontent.com/react-native-community/rn-diff-purge/release/0.71.3/RnDiffApp/android/app/build.gradle
My app/build.gradle
apply plugin: "com.android.application"
apply plugin: "com.facebook.react"

[...]

def reactNativeArchitectures() {
    def value = project.getProperties().get("reactNativeArchitectures")
    return value ? value.split(",") : ["armeabi-v7a", "x86", "x86_64", "arm64-v8a"]
}

def pass = getPassword(System.getenv('KEYCHAIN_USER'), System.getenv('KEYCHAIN_SERVICE'))

android {
    ndkVersion rootProject.ext.ndkVersion

    compileSdkVersion rootProject.ext.compileSdkVersion

    namespace "com.myapp"
    defaultConfig {
        manifestPlaceholders = [appAuthRedirectScheme: 'myapp.auth']
        applicationId 'com.myapp'
        minSdkVersion rootProject.ext.minSdkVersion
        targetSdkVersion rootProject.ext.targetSdkVersion
        if (project.hasProperty('RACENET_ANDROID_VERSION')) {
            versionCode RACENET_ANDROID_BUILD_NUMBER.toInteger()
            versionName RACENET_ANDROID_VERSION
        } else {
            versionCode 1
            versionName "1.1.3"
        }
        // buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()
        flavorDimensions "default"
        resValue "string", "build_config_package", "com.myapp
    }

    splits {
        abi {
            reset()
            enable enableSeparateBuildPerCPUArchitecture
            universalApk false  // If true, also generate a universal APK
            include (*reactNativeArchitectures())
        }
    }
    signingConfigs {
        debug {
            storeFile file('debug.keystore')
            storePassword 'android'
            keyAlias 'androiddebugkey'
            keyPassword 'android'
        }
        release {
            if (project.hasProperty('MYAPP_UPLOAD_STORE_FILE')) {
                storeFile file(MYAPP_UPLOAD_STORE_FILE)
                storePassword pass
                keyAlias MYAPP_UPLOAD_KEY_ALIAS
                keyPassword pass
            }
        }
    }

    productFlavors {
        development {
            applicationId 'com.myapp'
            minSdkVersion rootProject.ext.minSdkVersion
            targetSdkVersion rootProject.ext.targetSdkVersion
        }
        internaltest {
            applicationId 'com.myapp'
            minSdkVersion rootProject.ext.minSdkVersion
            targetSdkVersion rootProject.ext.targetSdkVersion
        }
        firstparty {
            applicationId 'com.myapp'
            minSdkVersion rootProject.ext.minSdkVersion
            targetSdkVersion rootProject.ext.targetSdkVersion
        }
        preprod {
            applicationId 'com.myapp'
            minSdkVersion rootProject.ext.minSdkVersion
            targetSdkVersion rootProject.ext.targetSdkVersion
        }
        production {
            applicationId 'com.myapp'
            minSdkVersion rootProject.ext.minSdkVersion
            targetSdkVersion rootProject.ext.targetSdkVersion
        }
    }

    buildTypes {
        debug {
            signingConfig signingConfigs.debug
        }
        release {
            // Caution! In production, you need to generate your own keystore file.
            // see https://reactnative.dev/docs/signed-apk-android.
            debuggable false
            signingConfig signingConfigs.release
            minifyEnabled enableProguardInReleaseBuilds
            // shrinkResources true
            proguardFiles ( getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" )
            firebaseCrashlytics {
                nativeSymbolUploadEnabled true
                unstrippedNativeLibsDir 'build/intermediates/merged_native_libs/release/out/lib'
            }
            ndk {
                debugSymbolLevel 'FULL'
            }
        }
    }

    // applicationVariants are e.g. debug, release
    applicationVariants.all { variant ->
        variant.outputs.each { output ->
            // For each separate APK per architecture, set a unique version code as described here:
            // https://developer.android.com/studio/build/configure-apk-splits.html
            // Example: versionCode 1 will generate 1001 for armeabi-v7a, 1002 for x86, etc.
            def versionCodes = ["armeabi-v7a": 1, "x86": 2, "arm64-v8a": 3, "x86_64": 4]
            def abi = output.getFilter(OutputFile.ABI)
            if (abi != null) {  // null for the universal-debug, universal-release variants
                output.versionCodeOverride =
                        defaultConfig.versionCode * 1000 + versionCodes.get(abi)
            }

        }
    }
}

dependencies {
     // The version of react-native is set by the React Native Gradle Plugin
    implementation("com.facebook.react:react-android")
    implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.0.0")
    // implementation fileTree(dir: "libs", include: ["*.jar"])
    implementation project(':react-native-inappbrowser-reborn')

    implementation project(':react-native-linear-gradient')

    debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}")
    debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") {
        exclude group:'com.squareup.okhttp3', module:'okhttp'
    }

    debugImplementation("com.facebook.flipper:flipper-fresco-plugin:${FLIPPER_VERSION}")
    if (hermesEnabled.toBoolean()) {
        implementation("com.facebook.react:hermes-android")
    } else {
        implementation jscFlavor
    }

    constraints {
        implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.0") {
            because("kotlin-stdlib-jdk7 is now a part of kotlin-stdlib")
        }
        implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0") {
            because("kotlin-stdlib-jdk8 is now a part of kotlin-stdlib")
        }
    }
}

apply from: file("../../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesAppBuildGradle(project)

And the settings.gradle
rootProject.name = 'myapp'
include ':react-native-vector-icons'
project(':react-native-vector-icons').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-vector-icons/android')
apply from: file("../node_modules/@react-native-community/cli-platform-android/native_modules.gradle"); applyNativeModulesSettingsGradle(settings)
include ':app'
includeBuild('../node_modules/react-native-gradle-plugin')
include ':react-native-linear-gradient'
project(':react-native-linear-gradient').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-linear-gradient/android')
include ':react-native-inappbrowser-reborn'
project(':react-native-inappbrowser-reborn').projectDir = new File(rootProject.projectDir, 	'../node_modules/react-native-inappbrowser-reborn/android')

apply plugin: "com.facebook.react"
add this in your build.gradle/app

same issue here with react-native 0.71.4

same issue here with react-native 0.71.6

Might be unrelated, but I had the same problem when upgrading my app from RN 0.68 to 0.71. In the end, I found out that my package.json still contained a reference to "react-native-gradle-plugin": "^0.0.7". Removing that line solved the issue for me.

Can someone please conclude how to solve this?

@nicks258
for my case I commented this line out
allprojects {
configurations.all {
resolutionStrategy {
//    force "com.facebook.react:react-native:" + REACT_NATIVE_VERSION
}
}
and did this
apply plugin: "com.facebook.react"
add this in your build.gradle/app

Asking again, can we get a reproducer?

I'm closing this as we couldn't get a reproducer from anyone. This is not an issue in React Native core but in some library. Without a repro we can't even provide workarounds.

I was upgrading to "react-native": "^0.72.0".
For me the issue was that for some reason react-native was not including the gradle plugin as a dependency. Was missing in my yarn.lock.
Manually adding yarn add react-native-gradle-plugin and yarn build and then editing settings.gradle file by adding this line:
includeBuild('../node_modules/react-native-gradle-plugin')
seemed to fix.
More info here:
https://reactnative.dev/docs/next/integration-with-existing-apps?package-manager=yarn#adding-react-native-to-your-app

Adding this line solved build issues
includeBuild('../node_modules/@react-native/gradle-plugin')

any solution?? I already tried everything
react-native:0.71.12

What went wrong:
Could not determine the dependencies of task ':app:compileCertDebugJavaWithJavac'.

Could not resolve all task dependencies for configuration ':app:certDebugCompileClasspath'.
Could not find com.google.firebase:firebase-bom:28.0.1.
Required by:
project :app
Could not find com.google.firebase:firebase-iid:.
Required by:
project :app
Could not find com.google.firebase:firebase-analytics:.
Required by:
project :app
Could not find com.google.firebase:firebase-messaging:23.1.1.
Required by:
project :app
Could not find androidx.appcompat:appcompat:1.3.1.
Required by:
project :app
project :app > com.google.dagger:dagger-android-support:2.42
Could not find androidx.security:security-crypto:1.0.0.
Required by:
project :app
Could not find androidx.mediarouter:mediarouter:1.2.2.
Required by:
project :app
Could not find androidx.vectordrawable:vectordrawable-animated:1.1.0.
Required by:
project :app
Could not find androidx.multidex:multidex:2.0.1.
Required by:
project :app
Could not find com.facebook.react:react-android:.
Required by:
project :app
Could not find androidx.core:core:1.6.0.
Required by:
project :app
Could not find androidx.multidex:multidex:2.0.1.
Required by:
project :app
Could not find androidx.swiperefreshlayout:swiperefreshlayout:1.0.0.
Required by:
project :app
Could not find androidx.work:work-runtime:2.7.1.
Required by:
project :app
Could not find com.facebook.react:hermes-android:.
Required by:
project :app
Could not find any matches for com.facebook.react:react-native:+ as no versions of com.facebook.react:react-native are available.
Required by:
project :app > project :react-native-community_art
project :app > project :react-native-firebase_analytics
project :app > project :react-native-firebase_app
project :app > project :react-native-firebase_dynamic-links
project :app > project :react-native-firebase_messaging
project :app > project :react-native-restart
Could not find androidx.activity:activity:1.3.1.
Required by:
project :app > com.google.dagger:dagger-android-support:2.42
Could not find androidx.annotation:annotation:1.2.0.
Required by:
project :app > com.google.dagger:dagger-android-support:2.42
project :app > com.google.dagger:dagger-android:2.42
Could not find androidx.fragment:fragment:1.3.6.
Required by:
project :app > com.google.dagger:dagger-android-support:2.42
Could not find androidx.lifecycle:lifecycle-common:2.3.1.
Required by:
project :app > com.google.dagger:dagger-android-support:2.42
Could not find androidx.lifecycle:lifecycle-viewmodel:2.3.1.
Required by:
project :app > com.google.dagger:dagger-android-support:2.42
Could not find androidx.lifecycle:lifecycle-viewmodel-savedstate:2.3.1.
Required by:
project :app > com.google.dagger:dagger-android-support:2.42
Could not find com.google.firebase:firebase-messaging:23.1.1.

@sebas21  have you solved it? I also tried everything but nothing solves the problem.

running

npm start
on another terminal: npx react-native run-android

I faced same issue with react-native:0.64.2

I edited the android/app/build.gradle file
dependencies {
...
implementation "com.facebook.react:react-native:0.64.2-4"  // Version installed see in package.json
...
}

It worked!

BUILD FAILED in 1m 47s
10 actionable tasks: 5 executed, 5 up-to-date
PS F:\fapProject\android> cd..
PS F:\fapProject> npx react-native run-android
info JS server already running.
info Installing the app...
5 actionable tasks: 5 up-to-date
info 💡 Tip: Make sure that you have set up your development environment correctly, by running react-native doctor. To read more about doctor command visit: https://github.com/react-native-community/cli/blob/main/packages/cli-doctor/README.md#doctor
Picked up _JAVA_OPTIONS: -Xmx1024M
FAILURE: Build failed with an exception.

What went wrong:
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.

Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'.
Could not find com.facebook.react:react-android:0.72.0.
Required by:
project :app
Could not find com.facebook.react:hermes-android:0.72.0.
Required by:
project :app

Try:

Run with --stacktrace option to get the stack trace.
Run with --info or --debug option to get more log output.
Run with --scan to get full insights.

Get more help at https://help.gradle.org

BUILD FAILED in 16s
error Failed to install the app. Command failed with exit code 1: gradlew.bat app:installDebug -PreactNativeDevServerPort=8081
Picked up _JAVA_OPTIONS: -Xmx1024M FAILURE: Build failed with an exception. * What went wrong: Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'. > Could not resolve all task dependencies for configuration ':app:debugCompileClasspath'. > Could not find com.facebook.react:react-android:0.72.0. Required by: project :app > Could not find com.facebook.react:hermes-android:0.72.0. Required by: project :app * Try: > Run with --stacktrace option to
get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 16s.
info Run CLI with --verbose flag for more details.
" am facing this issue too. Can anyone help me?

After updating react-native 0.73 and gradle 8.3, I received the following error
Could not find com.facebook.react:react-native:0.73.5
and I solved this by applying step by step from the link below as some friends explained, this error is also Plugin with id 'com.facebook.react' not found. It solves this too.
https://reactnative.dev/docs/next/integration-with-existing-apps?package-manager=yarn#adding-react-native-to-your-app

Note: After the update, you will definitely have missing files in the following files that are compatible with the new version:
build.gradle, app/build.gradle,  gradle.properties, settings.gradle, et.. *.gradle

Depois de remover o seguinte em Android/build.gradle funcionou:
...
exclusiveContent {
               filter {
                   includeGroup "com.facebook.react"
               }
               forRepository {
                   maven {
                       url "$rootDir/../node_modules/react-native/android"
                   }
               }
        }
        ...

A remoção desta parte também faz com que o projeto seja compilado (até que outros erros apareçam) com 0.71.3

thanks man, that soulved my problem. using react native 74.1


oddball species

How do we want to handle oddball "species" (e.g. unidentified species, hybrid species & subspecies)? They're usually pretty identifiable in the data using regexes, but it's not obvious to me how best to handle them.
My proposal:

For subspecies, it might be best to lump them in with the rest of their species.
For hybrids and unidentified species, we might have to drop them.

On a related note, did we make a decision somewhere about whether to remove super-rare species from the data set?

Your proposal sounds good to me.
Do we need to drop the super-rare's for the species distribution modeling?

We’d have to treat them specially in some way, either by fitting a different model with many fewer degrees of freedom or by dropping them altogether, I think.  Dropping them is simplest from my perspective.

On Apr 21, 2016, at 2:21 PM, Ethan White<EMAIL_ADDRESS>wrote:
Your proposal sounds good to me.
Do we need to drop the super-rare's for the species distribution modeling?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub https://github.com/weecology/bbs-forecasting/issues/35#issuecomment-213047936

I have no objections.

So, I just had a revelation: rare species don't contribute very much to richness.
For example, there are 72 species that showed up 50 or fewer times in the training data; removing them would only change the average richness from 57.26 to 57.19.
So (as long as we only care about richness) it shouldn't matter what we do with them. I'll just leave them in.

Sounds good. There are some papers we can cite for this as well if we need them.


edit date form

Value Proposition
As a user, I want to edit the destination's dates so i can plan my duration of staying there.
Description

Acception Criteria

[ ] A form in a modal component with blurry background overlay
[ ] Has a Save button
[ ] A Title named "Dates"
[ ] A label for Start Date and End Date
[ ] An input with date picker for Start Date and EndDate
[ ] Saves the changes into the destinations object

Tasks

[ ] On details page add an edit-icon-button behind the "Dates" label
[ ] The edit button set the state-object "modal" to {visible: true, name: "Dates"}
[ ] Create a form component
[ ] Create a label and input with date picker for Start Date
[ ] Create a label and input with date picker for End Date
[ ] Create a submit button component
[ ] Add accessibility tags to form components
[ ] Create a function that saves the dates to the destinations object
[ ] Create an onClick event-listener to the save button that calls the save-function
[ ] Create a condition that puts the form component inside the modal component on details page to be shown together

Looking good!
Just curious, what do you mean by this
Create a condition that puts the form component inside the modal component on details page to be shown together?
I can't properly visualize what this entails.
Everything else is clear and detailed, and I get a pretty good picture. 👍

Thanks for your review!
The form component will be displayed inside an already existing template-modal. When the state-object of the modal is set to "true" including the name of the form (e.g. {visible: true, name: "Dates"), the modal will be shown with this dates form.
Modal: https://github.com/sebsch1337/capstone-project/issues/26

Ah I see, alrighty then! Green light ahead🟢


How do I run this?

I'm trying to use this project because of this issue in the original.
Tabula's github says java -Dfile.encoding=utf-8 -Xms256M -Xmx1024M -jar tabula.jar but there is no tabula.jar here. How do I run this? Thanks!

mvn package followed by  java -jar target/tabula-web-0.0.1-SNAPSHOT-jar-with-dependencies.jar main, navigating in browser to localhost:4567 upload file,
Aug 25, 2017 11:33:50 AM org.apache.pdfbox.contentstream.PDFStreamEngine operatorException
SEVERE: Cannot read JPEG2000 image: Java Advanced Imaging (JAI) Image I/O Tools are not installed

Including this in the pom.xml doesn't help either.
            <dependency>
                <groupId>com.github.jai-imageio</groupId>
                <artifactId>jai-imageio-core</artifactId>
                <version>1.3.1</version>
            </dependency>
            <dependency>
                <groupId>com.github.jai-imageio</groupId>
                <artifactId>jai-imageio-jpeg2000</artifactId>
                <version>1.3.0</version>
            </dependency>


gmsh: 4.4.0 -> 4.4.1

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/gmsh/versions.
meta.description for gmsh is: '"A three-dimensional finite element mesh generator"'.
meta.homepage for gmsh is: '"http://gmsh.info/"

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
/bin/sh passed the binary check.
1 of 1 passed binary check by having a zero exit code.
0 of 1 passed binary check by having the new version present in output.
found 4.4.1 with grep in /nix/store/7r9jsr0a9k04azqbhgzigdbxs43x48gr-gmsh-4.4.1
directory tree listing: https://gist.github.com/4ca27f450583fd71fa67a0019928dc20
du listing: https://gist.github.com/68ce2c22e2da7616a2d24b374850398e

Rebuild report (if merged into master) (click to expand)

7 total rebuild path(s)
3 package rebuild(s)
3 x86_64-linux rebuild(s)
2 i686-linux rebuild(s)
0 x86_64-darwin rebuild(s)
2 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
gmsh
python27Packages.fipy
python37Packages.fipy

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/7r9jsr0a9k04azqbhgzigdbxs43x48gr-gmsh-4.4.1 \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A gmsh https://github.com/r-ryantm/nixpkgs/archive/5f3787932f6b2dc85af8eee6c4c4b4d701298066.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/7r9jsr0a9k04azqbhgzigdbxs43x48gr-gmsh-4.4.1
ls -la /nix/store/7r9jsr0a9k04azqbhgzigdbxs43x48gr-gmsh-4.4.1/bin

https://gitlab.onelab.info/gmsh/gmsh/blob/master/CHANGELOG.txt


JavaScript doesn't do bitshifts > 31 or integers larger than 2^53

Not sure what to do about this one, or even whether something needs to be done: JavaScript can only represent integers exactly up to 2^53, while AMQP has two types that are integers encoded in 64 bits (longlong and timestamp).
A timestamp is used only once in the protocol, as a timestamp for messages; this has no formal meaning, but taking it as say, Unix time, 2^53 is probably well after the technological singularity.
The type longlong is only used for delivery tags, in a few places, which are in effect serial numbers and (in RabbitMQ at least) scoped to channels. Reaching 2^53 messages on a single channel would be impressive.
Possibly more of a problem is that the parsing and serialisation code use bitshifts with operands outside that defined in JavaScript. Putting the 64-bit integer problem aside, these should really use straight multiplication and division (yes even for 32-bit numbers; bitshifts are defined on twos-complement integers).

They could be represented as a String:
https://github.com/broofa/node-int64


fix(@schematics/angular): enable lazy loading with ivy

Angular 8.0.0-beta.1 supports lazy loading with Ivy (at least a partial support), but currently the CLI needs "allowEmptyCodegenFiles": true to avoid errors like:
ERROR in ./src/$$_lazy_route_resource lazy namespace object
Module not found: Error: Can't resolve '/src/app/races/races.module.ngfactory.js' in '/src/$$_lazy_route_resource'

As discussed with @gkalpak this might be a temporary workaround, but it might help users giving a try to Ivy (as the workaround is not really trivial ^^) .

Superseded by https://github.com/angular/angular-cli/pull/13667