Video freezing

Apologies in advance for the vagueness of this report.
We have an app using this library for video streaming. Some users are reporting that video appears to freeze when they're streaming. Sometimes the video stutters for just a few moments, but other times the video freezes for 30 seconds or more.
From our stats the connection looks fine (no fluctuations in bitrate or dropped connections).
We suspected it may have been a processing issue, but this has been reported from users on a variety of devices, including a Samsung Galaxy S23+ which I would have thought was very capable.
These users have been able to stream using Larix Broadcaster without the same issues.
Unfortunately we've been unable to reproduce the issue, so I don't have any relevant logs or particular cases where this happens.
Just wondering if anyone has seen similar issues before. The closest issue I found was this: https://github.com/pedroSG94/rtmp-rtsp-stream-client-java/issues/1003, but that's to do with using filters, which we are not.

Hello,
Stream freezed is normally related with the following cases:

Bad internet connection that produce lose key frames
Inconsistently key frame rate. Normally produced by device encoder that doesnt produce key frames at good rate caused by a bugged encoder or a problem with the encoder configuration

Where do you have that freezes?

Stream result  or preview? live stream or vod of the live stream?
Is it possible to reproduce the error consistently?
Is the audio working while the video is freezed?

Meanwhile few ideas to test:

If you have adaptative bitrate remove it
If you are able to reproduce the error try to use a local server to remove internet issues
Test with differents iFrameIntervals values (recommended -> 1, 2, 5, 10). iFrameInterval is the rate specified to generate key frames. The value is basically the number of seconds where you will generate a key frame. For example:
1 -> 60 key frames per minute
10 -> 6 key frames per minute
0 -> all frames are key frames (this produce a massive increase of bandwith so it is not recommended)
If you can, check if you are receiving key frames consistently in your server side
Try to force use software video encoder

Also, if possible provide me:

Parameters of prepareVideo method
Platform/Server used (youtube, twitch, AWS, etc) and stream configuration if needed
An extended list of devices with the problem. Maybe I have one device or we can find a relation about the problem like CPU, manufacturer, etc

Just answering a couple of questions, I'll try to get more info.

Where do you have that freezes?
live stream or vod of the live stream?

Both the live stream and the vod of the live stream

Is the audio working while the video is freezed?

Audio is also not coming through

If you have adaptative bitrate remove it

Not using adaptive bitrate

Also, if possible provide me:
Parameters of prepareVideo method

We make resolution and bitrate configurable by the users, but generally they're using a resolution of 1280x720, bitrate of somewhere between 500Kbps and 6000Kbps, and FPS is currently always set at 30

An extended list of devices with the problem

At the moment we have:

S10 5G
S23+

We have two users streaming from the same location using the same internet connection and one user with a S22 has no issues, but a user with an S10 5G with no issues.

Hello,

Audio is also not coming through

Both the live stream and the vod of the live stream

This is really relevant. If you don't receive audio and video you can discard key frames lost because since the effect could be similar if you are losing video keyframes you should can hear the audio without issues (audio buffer has no key frames).
Also if you have the same problem on vod that means that you are losing that frames (audio and video) totally.

We have two users streaming from the same location using the same internet connection and one user with a S22 has no issues, but a user with an S10 5G with no issues.

Is it a typo and S10 5G has problems?
Assuming that you are using rtmp. If you can reproduce it with Samsung S10, we can try to stream to a well know platform like Youtube to discard problems in server side.
Also try with a video bitrate really low. The video quality is not important because we will try to discard if we have a bottleneck in the rtmp cache in my library (basically my library is dropping frames because the cache is full so drop frames to avoid memory leak instead of use an infinite cache). If it is the case, the problem will be reduced or fixed by this way. Try with a bitrate like 200kb

Closing as inactive.


Diffie Cipher Algo Added

What does this PR do?
Diffie Hellman Algorithm added
Have you read the Contributing Guidelines?
Yes

Hey Check my PR

Thank you so much for your contribution.

Give a star if you liked our repo.

Yaa Sure, Please can you add label in my pull  request as Hacktoberfest
accepted
On Wed, Oct 7, 2020, 5:56 PM Kunal Mali<EMAIL_ADDRESS>wrote:

Merged #463 https://github.com/dubesar/Java-A-Z/pull/463 into master.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dubesar/Java-A-Z/pull/463#event-3850253843, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AH6TG75SZUBCAOGKMIQFXKDSJRM6HANCNFSM4SHIKJJQ
.


Remove usage of jQuery ($) because it is not available in Fastboot

release in v0.5.1 (https://github.com/bustlelabs/ember-mobiledoc-dom-renderer/releases/tag/v0.5.1)


Open modal popup when clicked on node.

How can we open different modal(bootstrap) popups for every node we click.
ex : If we click on "leather defect marking" it should open an modal popup containing image (with some links) which explains leather defect marking process. same if we click on "Foam Injection" it should open an modal popup containing image (with some links) which explains foam injection process.
See image.

you can define links, like: st=>start: Start:>http://www.google.com[blank]
So just define a link containing some sort of identifier for your own page that shows up your modal...
i.e. http://localhost:8080/modal?component=start


RFC commit message style and release notes

About
This RFC summarises reasons behind git commit log message style that
was born in the Invenio 1 (and 2) monolithic world. Most of the original reasons
do not apply in the Invenio 3 independent package world anymore. Now that we are
approaching the first Invenio 3 stable release, the time is perfect to reflect
on the existing practices and how to improve them.
Note: This will be the topic of an Invenio Developer Forum
live discussions, so even though every one is encouraged to comment in here, it would
be great to meet up and reflect on the matter IRL together.
1. General upstream conventions
Upstream git conventions talk about a commit log headline, followed by a blank
line, followed by the multi-line body. Just as we use PEP-8 for Python code, we
use these upstream general git conventions for commit log messages. (Users of
Emacs, Vim and possibly other code editors have a "commit log mode" that helps
to format the messages according to these general conventions.) This RFC is not
questioning these; it focuses solely on the Invenio-specific semantics expressed
inside.
2. Commit headline format
In Invenio 1 (and 2), the convention was to use:
component: brief description

permitting to rapidly distinguish commits to various modules:
BibFormat: initial release of mobile app formats
WebSearch: display number of hits in mobile output
BibDocFile: improve BibDoc display in Files tab

In Invenio 3, the modules have been split into independent packages, making the
original intent not applicable.
Do we consider the separate leading component as still useful? If so, do we use
it to denote component of a package (docs, test, ui, core, api, etc) or nature
of the commit (bug, feature, enhancement, etc) or something else? If not, do we
prefer the headline to be a simple free style phrase? Do we pay attention to
headlines while bisecting?
3. Commit signatures
In Invenio 1 (and 2), we have been using Trac and Jenkins, the commit signatures
expressed the commit kwalitee and review status:
Signed-off-by: Tibor Simko<EMAIL_ADDRESS>Reviewed-by: Tibor Simko<EMAIL_ADDRESS>Reported-by: Tibor Simko<EMAIL_ADDRESS>Co-authored-by: Tibor Simko<EMAIL_ADDRESS>
In Invenio 3, we are using GitHub where centralised reviews happen, and Travis
where commit quality and CI tests are enforced.
Do we keep some of the signatures to express credit for reporting and/or
co-authoring? Do we remove all signatures?
4. Release notes vs commit notes
In Invenio 1 (and 2), the point releases were rare, and services such as INSPIRE
often used master branch in production, and wanted to know what changed
precisely between any two given SHA1a and SHA1b. Hence the release notes
that were compiled "live" for any commit log message range:
kwalitee prepare release -c sha1a..sha1b

In Invenio 3, the point releases of various packages happen very frequently and
services are often deploying from PyPI releases only. (Side note: pinning
specific versions that are "waiting" for release due to some blockers.)
Do we consider it useful to keep relying on git log based messages to compile
release notes? Do we consider it sufficient to maintain a separate RELEASE-NOTES
file dissociated from commit logs? Do we consider it useful to be able to
compile changes automatically at any point in time? Do we compile them only at
the release time? Do we pay attention to release notes vs commit notes while
bisecting?
5. Release note classification
In Invenio 1, the release note messages were originally compiled from short
commit log headlines, see for example 1.1.0 release notes.
This was often too brief to be understandable by the users.
This led to the introduction of commit log labels such as NEW, BETTER, FIX in
front of longer sentences, so that the release notes would be much more
self-understood and and categorised. See for example 1.2.1 release notes.
Do we want to keep or amend the NEW/FIX/BETTER/SECURITY/etc release note
classification?
6. Release note author
In Invenio 1 (and 2), the release notes were created from the commit log
messages via commands like:
 kwalitee prepare release -c v1.1.6..

Hence it was important to use proper English phrases in the commit log messages.
Oftentimes developers didn't pay attention to this, which necessitated (i)
cherry-picking by the maintainer and/or (ii) rebasing by the developer.
Do we want the release note messages to be written by the contributors or by the
maintainers? Do we let maintainers rewrite the release notes either by
cherry-picking, or by using explicit merge commits, or by maintaining a separate
file, or by amending GitHub issue body, etc? Is the PR author the best person to
think of the release message? Is it the maintainer?
7. Body format
In Invenio 1 (and 2), the convention was to use itemised list:
* BETTER Improves foo.

* FIX Fixes bar.

permitting to express different facets of what the given commit does. (For
example, enhances a feature and fixes a related bug at the same time.)
Do we consider this still useful? Do we require one commit to announce one thing
and one thing only?
8. Issue integrations
In Invenio 1 (and 2), the link between commits, PRs, and issues were expressed
via usual directives:
 (addresses #1234)
 (closes #1234)

The format was parenthesised so that release notes could be properly compiled.
Some developers didn't use this format, requiring usual amendment cycle. Are we
happy with the practices? Are we remove the constraints?
9. Message format checks
If we retain using some structured commit message format, it should be easy to
check and plug into Travis CI. Currently, we use:
kwalitee check message master..upstream/pr/13

and this is plugged into CI for several repositories. Do developers run these locally?
Do we plug these into Travis CI everywhere?
Proposal time!
The above points summarised the main reasons behind current practices. Many of
the reasons are no longer valid in the world of Invenio 3 distributed packages.
Now that we are about to release the first Invenio 3 "production" packages,
the time is good to ponder and improve the system.
The high-level goals for selecting a consistent commit note system for Invenio
packages:

the commits should be atomic etc (as usual);
the commit message should describe changes fully, so that it would be
self-understood what the commit does, even without reading the code;
the commit notes should facilitate later bisecting;
the release notes should be easily maintainable and not prone to getting
forgotten or getting out of sync with the code;
the release notes should be informative to the users.

Let's discuss any finer points and any proposals live at an Invenio Developer Forum.
CC @inveniosoftware/developers

the release notes should be informative to the users.

This requires IMHO to define the target user first. Early adopters of new code staying on the bleeding edge all the time would probably go for the commit messages and skip release notes. User who just run a service with occasional upgrades may feel that release notes are much more important. E.g. as we are running way behind the bleeding edge I tend to checkout release notes closely but do not dive through the last months of commits.

If the problem is that developers don't run kwalitee locally or just to ease the correct formatting of a commit, there's this tool: https://github.com/commitizen.
The preferred styling can be chosen through given adapters or by building one's own adapter, so it would be possible to combine it with kwalitee if desired.
It does not enforce usage and it's not needed either, but it makes commiting in the correct style a lot easier. Also, it tries to address the matter from the angle of avoiding styling mistakes in contrast to checking correctness after committing which requires additional action if errors were found that need correction.

Still, following the discussion on Vidyo I had the impression that there were  basically two kind of people present. The first two of the following list.

Developers as you call them. Those guys you envision here follow the bleeding edge anyway, run on the latest code, don't need any release notes and thus don't want to care about them. Usually, however, they do not run a productive system.
There is (to my experience) a second sort of developers that are a bit more relaxed concerning the blood, and don't follow the latest line of every commit or only parts of the project. They'd probably like distilled versions from modules they don't really care too much about (assume them working and less relevant) while they follow more closely the stuff relevant to them. They are more likely to run a productive system  or are the second or third level support.
Mere mortals (like me) are happy if they can weed through  a distilled version of important changes after the year or so when git pull happens. People like me don't like this release with every commit idea at all. I fear, I have to run systems in production. Keeping those running is the foremost concern. New features are not. In my world a release cycle of 2 years is quite fast but probably do able. Everything faster is unusable. So, it might well be that I have to read several release notes in sequence, mentally diff them to get the relevant part. This makes them a bit more important to me than the individual commit message as such.
Users of invenio would IMHO also like a release note. Much more, they would prefer stable packages with sensible configs in a decent Linux (server) distribution and thus don't care too much about it as it's mainly the maintainers stuff. Still one likes to get again a distilled list of important changes. E.g. I usually read the release notes of my core tools in detail to check if some changes affect me or if there is some useful new stuff. Ie. in an ideal world I for myself would fire up vim to read the release notes after apt-get install invenio on my Debian stable server and then edit only config files, but I'd not write any line of python at all to get it running. However, I fear these people are not and will never be targeted by invenio.  (One can have dreams though ;)

I think before discussing  fullstops at line ends, the usage of lists vs. prose or past/present tense formulations of more or less English text  one should be sure to know the target audience of the resulting document. I admit I don't care at all if it's past or present, if it's a bullet point list or prose. I am with @jirikuncar that it should probably be on the level of email. (Czech, however, would be a different issue due to my limitations ;)
Additionally, I frankly admit, that some of the few lines of code I was able to contribute to invenio in the current scheme sometimes took me a few minutes to write while I had some tough and longish fight to get the commit right (and still failed as some of you know all too well). OTH I only did it once in a while so it was always basically starting from scratch.
Still I'd argue that one should have at least the mere mortals of the above list in mind and probably invest some work for them even if it delays some fancy new something.

Mere mortals (like me) are happy if they can weed through a distilled version of important changes after the year or so when git pull happens. People like me don't like this release with every commit idea at all. I fear, I have to run systems in production. Keeping those running is the foremost concern. New features are not. In my world a release cycle of 2 years is quite fast but probably do able. Everything faster is unusable. So, it might well be that I have to read several release notes in sequence, mentally diff them to get the relevant part. This makes them a bit more important to me than the individual commit message as such.

@aw-bib, you should note that  more frequent releases is disjoint from new features. In Invenio packages carefully apply semver then in principle we can have one release per bugfix (thus increasing the minor version), and you can apply these on production without worry (as you do with any other deb/rpm package in your production system). You just need to limit dependencies to minor versions. E.g. you say invenio-records==1.0.*. You won't have scary new features, but you'll benefit bug/security fixes.

Just to add another 'production system maintainer' opinion:

I'm a mere mortal too, I'm happy if I get a distilled version of important changes, specially, the separation between features/fixes and backwards compatible/incompatible. That allows me to decide if a package/lib/whatever can be easily upgraded or not.
But, this must be strongly paired with a semantic versioning schema. That is, make the version number useful, BUMP the major, when there's a non-backwards compatible change, so I can pin to the major version and still get the new features for that version and bugfixes.
I really try to avoid pulling once a year (that will require a HUGE amount of effort every time you upgrade, and a lot of pain afterwards to fix everything that was broken), instead, my goal is to deploy at least once a week all the minor versions and once a month all the major upgrades (that we want in). That lowers considerably the total amount of work needed, smooths the upgrades, and allows faster and easier track/adaptation/fix of features and bugs. I think that at this point, we have enough examples in the real world that doing smaller more frequent upgrades is way smoother in every way than doing huge, yearly ones.

Dear Alexander et al,
At Thu, 24 Nov 2016 01:10:12 -0800, Alexander Wagner wrote:

Still, following the discussion on Vidyo I had the impression that
there were basically two kind of people present. The first two of
the following list.

thank you for handling me a copy of your thoughts, as I cannot follow
those discussions.  Your words are my words.  I agree on all your
thoughts.  I am a mere mortal, and frankly, I feel myself alienaded
since quite a few months of Invenio development.  I cannot follow this
path anymore.
It appears as if you, the developers, are racing a race with your
colleagues about which new tool or toy is newer or cooler, without
having a second thought about whether it will help normal,
non-developers Invenio administrators.
As a trivial example about release notes, it took myself a few hours
to document locally the changes between our current upgrade from 1.1.2
to 1.1.6, as the developers notes don't make much sense to librarians
(currently 2 of our 3 production sites already upgraded).
Thanks for listening,
Ferran

note that more frequent releases is disjoint from new features

This is understood as long as the frequent releases are on the patch level.
@kaplun I understood the semver issue you mention and this is something I like, provided your if clause stays true :) apt-get upgrade is fine with me as well. I'd prefer to have it in apt instead of something else, but this is out of the question here. Still, for us as a multi-host multi-site project roll-out has some implications. So for mere practical reasons (admin schedules and such things) IRL we may very well jump from patch level 1 to 245 in one go. Here it is of some practicality if I can easily check what's already included in 1..245, as 173 may require/enable us to disable a local patch.
@david-caro besides we agree, note that we currently live in legacy world. Ie. 1.1.x. Yes, we deploy the x. At the time of writing this pull once a year is slightly over exaggerating the current release cycle on that branch. I used it more metaphorically, that we do not check each and every commit or follow closely the very latest developments as they are currently far, far away.
I admit that I do not yet see if this strong modularization of invenio 3.x will be of any benefit to us. I'm sure it will change a lot. What I'm pretty sure about is that roll out once a week is at least challenging. Right now we manage a monthly schedule. Invenio GA + our overlay that is. Usually we deploy changes in our overlay. For invenio GA it is usually longer than one month. 1.1.7 is in preparation, I think. It will allow us to drop some of our patches... Checking release notes ;) This requires some preparation.

@aw-bib Sure, I was talking about invenio >=3 branches/projects, as it's not easy nor practical to do with the old legacy ones, I completely agree with that. It's also nicer as you really should not care about the release notes of any of the dependencies, and the module separation will allow you to ignore a bunch of them making the release notes of invenio way clearer and relevant.
In any case, the migration to invenio 3 should come sooner or later, so well, you should probably keep it in the back of your mind too ;)

It's also nicer as you really should not care about the release notes of any of the dependencies

I admit, I tend to buy this only in futur II (Once I will have seen ... ;) But it would be nice.

Concerning the log format, angularjs use a specific convention that can be a source of inspiration:
https://gist.github.com/stephenparish/9941e89d80e2bc58a153


Mobile setting for git config user.email

Hello, when committing on mobile it's not possible to set git config user.email in the plugin config, so I cannot commit changes. Could you please add this option?

When you initialized a repo you should find it in the settings under advanced at the bottom.

Found it. Thanks!


Lazy evaluation

Fixes #471
Todo

Investigate Idris 2's implementation of lazy evaluation. They use CBN during typechecking, but CBV at runtime/compiled programs

Very nice, I’m happy with this. Is there anything else that needs to be done to the before merging?

Should types of items/metavars/local vars be lazily evaluated too?


fix: API usage alerting in production

Thanks for submitting a PR! Please check the boxes below:

[x] I have run pre-commit to check linting
[x] I have added information to docs/ if required so people know about the feature!
[x] I have filled in the "Changes" section below?
[x] I have filled in the "How did you test this code" section below?
[x] I have used a Conventional Commit title for this Pull Request

Changes
In order to address https://github.com/Flagsmith/flagsmith/issues/3461 two main issues were handled. First, an incorrectly implemented InfluxDB query was fixed in order to get the full API usage counts in a single scalar. Second, a local evaluation mode Flagsmith client was introduced in order to allowlist organisations into alerting so that any given mistake in the API alerting code won't disrupt too many users.
How did you test this code?
The API usage code was tested against the staging InfluxDB setup with a date range window set to about a year to gather the most amount of data. Thousands of organisations were tested without the same failure once the fix was implemented.
The local evaluation Flagsmith client code was tested locally with settings variables set to appropriate values. During testing an issue with local evaluation cropped up where flags were not present if the method call happened before the local evaluation cache had been set, so this was temporarily worked around with a small sleep on the client's instantiation.

Codecov Report
Attention: Patch coverage is 97.43590% with 1 lines in your changes are missing coverage. Please review.

Project coverage is 95.86%. Comparing base (d13013c) to head (c882d34).
Report is 15 commits behind head on main.

:exclamation: Current head c882d34 differs from pull request most recent head 833a17a. Consider uploading reports for the commit 833a17a to get more accurate results

Files
Patch %
Lines

api/integrations/flagsmith/client.py
91.66%
1 Missing :warning:

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3507   +/-   ##
=======================================
  Coverage   95.86%   95.86%
=======================================
  Files        1099     1099
  Lines       34184    34218   +34
=======================================
+ Hits        32770    32803   +33
- Misses       1414     1415    +1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Error while trying to create embeddings

I get this error when I try to create embeddings:
Creating embeddings for file: /app/app/models/../assets/raw/.DS_Store and saving to: /app/app/models/../assets/embeddings//.DS_Store.embedding.pkl Creating embeddings... Traceback (most recent call last):   File "/app/create_embeddings.py", line 11, in <module>     EmbeddingsService.create_embeddings(filename_to_embed)   File "/app/app/models/embeddings_service.py", line 27, in create_embeddings     EmbeddingsService.create_embeddings_for_file(file)   File "/app/app/models/embeddings_service.py", line 40, in create_embeddings_for_file     EmbeddingsService.create_embeddings_and_save(raw_file_path, embedded_file_path)   File "/app/app/models/embeddings_service.py", line 49, in create_embeddings_and_save     file_to_split = f.read()                     ^^^^^^^^   File "<frozen codecs>", line 322, in decode UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 3131: invalid start byte ERROR conda.cli.main_run:execute(47): conda run python /app/create_embeddings.py failed. (See above for error)

Also, I don't get any response when I try to question the included embeddings.

Hi @abdcef ,
According to the error you have a '.DS_Store' file in the embeddings directly.  Please remove that and try again.  Here's how  to delete that file (https://stackoverflow.com/a/30483727/3858363).

I was able to ask question on the latest build with same document and question.  It may take a few seconds for the response after hitting submit.  If you still encounter the issue please provide the logs and error message from the server running in Docker.

Thanks for trying it out.  Let me know if you have any other issues.


Imported ModelElements are static

This is closed by the fixed Naming thing

@Bizarious @Rumo99 I will fix this and merge into main today


Exception thrown while executing UI block

Unexpected behavior
ERROR:  "Exception thrown while executing UI block: =[NSCFNumber firstObject]: unrecognized selector sent to instance ... ".
I'm working on the same project with the same code base as friend and we have copy pasted the react-native-svg example from the github page and we are using version 9.9.2.  His works and mine doesnt. My error is being produced when I add any props (e.g stroke, fille etc..)  to the circle or rect items from the examples.  When i remove these props i get no errors but nothing shows up in the app.
React native info output:
Binaries:
Node: 12.13.1 - C:\Program Files\nodejs\node.EXE
Yarn: 1.17.3 - C:\Users\ricky\AppData\Roaming\npm\yarn.CMD
npm: 6.12.1 - C:\Program Files\nodejs\npm.CMD
npmPackages:
react: ~16.9.0 => 16.9.0
react-native: https://github.com/expo/react-native/archive/sdk-36.0.0.tar.gz => 0.61.4
react-native-svg: 9.9.2
Describe what you expected to happen:

Since I am using the same code base and version of react-native-svg as my friend (it works for him), i expect the react-native-svg github example to work for me as expected.

Not much to go on here, can you make a reproduction? Did you use expo install react-native-svg to install it?

I've had the same happen to me. I run a managed Expo app, that after updating to SDK 37 produced this error. Had to revert from 11.0.1 to 9.13.3. Issue happens on both iOS and Android devices, Android throws a more descriptive error. I've attached a screenshot of both my emulators.
This is a simplified version of how I implemented it:
`
import { SvgXml } from 'react-native-svg'
<SvgXml
xml={icon}
role="presentation"
aria-hidden="true"
focusable="false"
fill={color ? color : null}
color={color ? color : null}
width={width}
height={height}
/>
`

I am also having the issues described above.
Just running expo install react-native-svg and trying to render a simple circle throws the above exception.
EXPO SDK 36.0.0

Can you provide the svg content that triggers this?

It's totally the same with me.
I'm using expo sdk 36.0.0 too.

After changed react-native-svg version to 9.3.3, it was solved. 👍

I have this same problem. However, it happens when I try to render svg with Storybook. I switched to 9.13.6 and it started working

The same issue using,
react-native-svg: "^12.1.0"
Expo SDK: 36.0.0.
yarn: 1.19.1
Node: 12.16.1
FIXED with "react-native-svg": "9.13.3"

Using an old version is NOT a solution, why is the new version not working?

Same issue here.
I tried to find which version causes this issue and it seems like v11.0.1 is the one.

11.0.1 -> Not working
11.0.0 -> It works

@msand
Here is the svg content I used. (logo of Google photos)
https://upload.wikimedia.org/wikipedia/commons/archive/4/4f/20190930190015!Google_Photos_icon.svg
expo SDK 37.0.1
yarn 1.22.4
node 12.16.3
I use react-native-svg-transformer to render this svg as a component.

I am facing this issue as well. This is painful. Hopefully I'll be able to follow up with a solid solution here.

Having the same issue with v40.
package.json
{
  "homepage": "___",
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "web": "expo start --web",
    "eject": "expo eject",
    "test": "jest --watchAll"
  },
  "jest": {
    "preset": "jest-expo"
  },
  "dependencies": {
    "@expo/vector-icons": "^12.0.0",
    "@react-native-async-storage/async-storage": "^1.13.2",
    "@react-native-community/masked-view": "0.1.10",
    "@react-navigation/bottom-tabs": "^5.11.2",
    "@react-navigation/native": "^5.8.10",
    "@react-navigation/stack": "^5.12.8",
    "dayjs": "^1.9.6",
    "expo": "^40.0.0",
    "expo-application": "~2.4.1",
    "expo-asset": "~8.2.1",
    "expo-constants": "~9.3.3",
    "expo-font": "~8.4.0",
    "expo-linking": "~2.0.0",
    "expo-localization": "~9.1.0",
    "expo-random": "~10.0.0",
    "expo-screen-orientation": "~2.1.0",
    "expo-splash-screen": "~0.8.1",
    "expo-status-bar": "~1.0.3",
    "expo-web-browser": "~8.6.0",
    "i18n-js": "^3.8.0",
    "luxon": "^1.25.0",
    "react": "16.13.1",
    "react-dom": "16.13.1",
    "react-native": "https://github.com/expo/react-native/archive/sdk-40.0.0.tar.gz",
    "react-native-gesture-handler": "~1.8.0",
    "react-native-safe-area-context": "3.1.9",
    "react-native-screens": "~2.15.0",
    "react-native-svg": "12.1.0",
    "react-native-web": "~0.13.12"
  },
  "devDependencies": {
    "@babel/core": "~7.9.0",
    "@expo/config": "^3.3.3",
    "@types/react": "~16.9.35",
    "@types/react-native": "~0.63.2",
    "jest-expo": "^40.0.0",
    "typescript": "~4.0.0"
  }
}

(https://user-images.githubusercontent.com/62814020/130643952-7e01b8b3-cc6e-4a45-9eb7-31dbf4656cac.jpeg)
help me, please

(https://user-images.githubusercontent.com/62814020/130643952-7e01b8b3-cc6e-4a45-9eb7-31dbf4656cac.jpeg)
help me, please

You're vendor locked into a higher version of react-native-svg via Expo so you'd have to npm run eject first, then reinstall the lower target dependency version described above (react-native-svg 9.13.3) without Expo (so run npm i<EMAIL_ADDRESS>NOTE: USE CAUTION - Always ensure you have a backup. I would do this from scratch in a separate directory so you don't lose any work or stash existing changes. From there, you can always cherry pick your new features, etc (depending on your standards and workflow).
This works for me.

i'm having this issue on §"react-native-svg": "^12.3.0",§
in android app crash, on ios it just show that warning.. any solution ?

Try "expo install react-native-svg" in your terminal

solution
expo install react-native-svg

npm i<EMAIL_ADDRESS>worked for me :)

When i Installed react-native-svg using yarn add react-native-svg it installed the latest version (13.2.0)
when installing it using the expo cli expo install react-native-svg it installed the correct version (12.3.0)

Same issue here, it's working with 9.13.3 but it's not real solution to use deprecated version

For me 9.13.3 not working also latest not working. Get same issue please help.


Sm/no-wildcards-in-preview

What does this PR do?
fix: wildcard entry is included in list of files that would be deployed
qa: sfdx project deploy preview -m ApexClass
What issues does this PR fix or reference?
see blitz

is this a code smell? I don't see anything similar in plugin-source... not sure where the '*' is coming from?

plugin-source (source:status) was using STL for local/remote changes.
since PDR supports the metadata/manifest/path flags, it's running those changes through the same logic (componentSetBuilder) that SDR would use for a deploy/retrieve to get a componentSet, then seeing what's in that (so, pretty much everything before calling deploy on it).
That componentSet includes the*, which we could strip out.


Dump when adding huge package to abapgit

Hi,
i tried to get to our biggest package to ABAPGIT ( around 2000+ programs and other objects ). It took a while and then it ended with this dump (there is todo comment in the code). But it nearly finished :)

hi, can you check the contents of variable is_item?

To be honest im quite afraid to try it again. As we have recently lost our backup files for SAP developer system :D

huh? lost the files? due to the bug above?

I don't think so. Corrupted backup files on the HP-UX.

ahh, phew 😓
Anyhow, the export of a package only reads objects. Is the ST22 dump still in your system, as it might contain the values of IS_ITEM.

That's nice to hear that it only reads :)
Here is the content of IS_ITEM:

dump should now be fixed, https://github.com/larshp/abapGit/commit/a54d5779e92886117a34e1772d1a4c2cee5b65c3

Thanks a lot :)


Multi config support from command line options

Would be good to allow a user to specify which configuration file to use at execution time, via command line options.
That way the same application could manage multiple subdomains/domains.

Now that pywrapid is released we should consider adopting the configuration and config management from that instead.
Most likely we should rewrite the base and create a proper python structure.
The script could then be expanded to including a CLI client as well as a library portion.


"on duplicate update +=" and "rows_per_query"

Appended a possibility of building quesies like
INSERT ...
ON DUPLICATE ON DUPLICATE KEY UPDATE column1 += VALUES(column1)

For use this feature you should specify the next line in your config:
on_duplicate_update_keys +=column1

New parameter rows_per_query specifies maximum number of rows for one insert. It helps to split very big chunks.
Example:
rows_per_query 5000.
If input chunk has 19000 rows to insert, then we will get 4 insert queries with not more than 5000 rows.

Travis says that build fails and I see the outpuut below:
Gem::InstallError: string-scrub requires Ruby version >= 1.9.3.
Installing msgpack 0.5.11
An error occurred while installing string-scrub (0.0.5), and Bundler cannot
continue.
Make sure that gem install string-scrub -v '0.0.5' succeeds before bundling.
It seems like not a my fault.


[RemoveTestSuffixFromAbstractTestClassesRector] Add new rule (#132)

Closes https://github.com/rectorphp/rector-phpunit/issues/132

@samsonasik if you have time could you give me some hits for https://github.com/rectorphp/rector-phpunit/pull/141#discussion_r1062603500 & https://github.com/rectorphp/rector-phpunit/pull/141#discussion_r1062603878

@samsonasik if you have time could you give me some hits for #141 (comment) & #141 (comment)

@samsonasik sorry to bother you, but if you have time could you help me out or is there someone else you know who can help me out?

I'll give this a priority today :+1:
Sorry for keeping you waiting, we were trying to handle all the custom PHPUnit 10 annotaiton to attribute changes.

Continues in https://github.com/rectorphp/rector-phpunit/pull/151
Thanks for the kick off :partying_face:


Partially compatible with styled components, array of styles doesn't apply styles

Steps to reproduce

Expected behavior
fontFamily should be settled as usual for TextInput
Actual behavior
When setting custom fontFamily via styled components I am constantly getting an error
Without styled-components works fine(via regular StyleSheet.createObject)
In addition, when passing array of styles, styles just simply doesn't works

Environment

Expo SDK 47: 47.0.13
React Native platform + platform version:  Simulator iPhone 11 Pro iOS 16.2
Typescript version : 4.9.5
styled-components: 5.3.6

react-native-mask-text
Version: 0.13.1
Code to reproduce
const Input = styled(MaskedTextInput).attrs<CustomInputProps>(
  ({ theme }) => ({
    flex: 1,

    // could be whatever font
    fontFamily: theme.font.bold,
  })
)<CustomInputProps>({})

Current workaround
Just not use styled components :(

Hello, @akinncar thanks for creating this lib, looks great 🙌
Unfortunately, I got this error with styled components, will you have a chance to review this issue?
I would be glad to see feedback from you!

You need to check for an array here as well, to be able to pass array of styles
https://github.com/akinncar/react-native-mask-text/blob/main/src/components/MaskedTextInput.tsx#L49

thanks for the report
would you consider creating a PR to fix your issues? @Roka20012
I bet that it can be faster than wait for me since I have an extensive pipeline to do right here
I can help reviewing, testing, and releasing

@akinncar I would like too
Will try tomorrow, midnight time for me now)

Just ran into this myself with nativewind heres the patch that seems to fix it for me
diff --git a/lib/commonjs/components/MaskedTextInput.js b/lib/commonjs/components/MaskedTextInput.js
index e8f22f1dcb3ba20443b2098a2585b3581b3b9781..7b84a2adb34bf5fa018cc98c9d9ece6c481f4cd5 100644
--- a/lib/commonjs/components/MaskedTextInput.js
+++ b/lib/commonjs/components/MaskedTextInput.js
@@ -26,12 +26,11 @@ const MaskedTextInputComponent = (_ref, ref) => {
     style,
     ...rest
   } = _ref;
-  const styleSheet = {
-    ...(typeof style === 'object' ? style : {}),
-    fontWeight: textBold && 'bold',
+  const styleSheet = [
+    {fontWeight: textBold && 'bold',
     fontStyle: textItalic && 'italic',
-    textDecorationLine: textDecoration
-  };
+    textDecorationLine: textDecoration}, style
+  ];
   const getMaskedValue = value => (0, _mask.mask)(value, pattern, type, options, autoCapitalize);
   const getUnMaskedValue = value => (0, _mask.unMask)(value, type);
   const defaultValueCustom = defaultValue || '';
@@ -68,9 +67,7 @@ const MaskedTextInputComponent = (_ref, ref) => {
     maxLength: pattern.length || undefined
   }, rest, {
     value: actualValue,
-    style: {
-      ...styleSheet
-    }
+    style: styleSheet
   })), inputAccessoryView);
 };
 exports.MaskedTextInputComponent = MaskedTextInputComponent;

@dannyhw thanks for the patch, that fixed the issue I created PR for the fix
Also don't forget to update the MaskedText component as well, in case you will need this


Installation was not succeded

I tried to install this package using pip but it did not work. In the attached picture, you may see the problem. I would be appreciate if anyone could help me with this issue.

@okantopcu Can you please provide some information on the system/architecture you're using ?

dear mario, i guess the information in the attached files would be sufficient. But if you need further questions, i can provide more information. Thanks for your reply, by the way.

I guess the problem arises from the wrong placed lib folder. It should be placed under pyhton folder. Otherwise, the source file can not be found and installation can not be carried out.

Building python wheels on Windows wasn't considered so far since the python wheels are usually built using the make framework on linux/mac (see e.g. github workflows). By the way, if you miss binary wheels for any OS, arch or python version, please let me know! So I'm afraid, for the time being you have to copy lib/ to the python directory to build on windows.


[feature](invert index) match_phrase_edge feature added

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run feut


Add Relevance to Scenario Editor

Connect the scenario editor to the interview endpoint, and have it visually communicate what additional inputs would be relevant in finding additional models for the query.
This is probably going to require a fix for #315, first.

The interview endpoint has been changed, scenario editor has been updated to display relevance data for new objects and new values for a given object and attribute. It's not clear to me whether all kinds of relevance (unbound) are being calculated and displayed properly. It's also not clear whether the problem with defeasibility has been solved by switching entirely to the answers provided by the abducible query.
Right now, abducible answers and non-abducible answers are not being distinguished from one another, and there is no short hand for the circumstances under which an answer holds.
Need to do a bunch of testing with defeasibility and other things and see what I can break.

One possible problem: If there is an object in a category, and additional objects may also be in that category, the possibility that the object is in the category can be proved both by abduction and the fact, resulting in multiple redundant explanations.

[ ] Change the abducibility for categories to exclude known members.

[ ] Add semantic information to explanation structure, so we can format explanations and answers based on the semantic concepts they contain, (e.g. includes assumptions)
[ ] Change abducibibility for categories to include abducibility for the attributes of members of those categories that don't already exist.

[ ] Make it so that if a collapsed object has relevant attributes, the arrow icon is highlighted.
[ ] Maybe make relevant object and boolean selections visible in drowndowns
[ ] Add a list of presumptions to the top of explanations?

[ ] Make the answers window display when no answers are received.

Adding relevance doesn't require distinguishing answers and listing presumptions. I'll make separate issues for those, and just focus on getting collapsed relevant inputs to be visible, and marking options as relevant, when we know.

Done in modify_interview branch.


Prepend to PYTHONPATH in test_console_script* instead of replacing

Modify _test_console_script() to prepend to PYTHONPATH instead of
overwriting its value.  This is necessary so that it is able to find
just-built version of argcomplete that is provided via PYTHONPATH
(vs requiring it to be installed in system-wide directory prior).
Otherwise, the tests are failing:
Traceback (most recent call last):
  File "./bin/test-package", line 5, in <module>
    from test_package import main
  File "/tmp/argcomplete/test_dir_pychyg9vqx/test_package/__init__.py", line 4, in <module>
    import argcomplete
ModuleNotFoundError: No module named 'argcomplete'

Codecov Report

Merging #275 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #275   +/-   ##
=======================================
  Coverage   84.23%   84.23%
=======================================
  Files           7        7
  Lines         717      717
=======================================
  Hits          604      604
  Misses        113      113

Continue to review full report at Codecov.

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

Do you require me to cut a release?

No need to, already patched it on our end.


Use (CompactForm Coin) in IncrementalStake, DRepDistr (and other places) instead of Coin

Changed the IncrementallStake 'credMap' field to (Map (Credential 'Staking c) (CompactForm Coin))
This facilitated changing it in DRepDistr and RatifyEnv as well, Now taking a snapshot of one of these is a simple pointer copy.
Description

Checklist

[ x] Commit sequence broadly makes sense and commits have useful messages
[ ] New tests are added if needed and existing tests are updated
[ ] When applicable, versions are updated in .cabal and CHANGELOG.md files according to the
versioning process.
[ ] The version bounds in .cabal files for all affected packages are updated. If you change the bounds in a cabal file, that package itself must have a version increase. (See RELEASING.md)
[ ] All visible changes are prepended to the latest section of a CHANGELOG.md for the affected packages. New section is never added with the code changes. (See RELEASING.md)
[x] Code is formatted with fourmolu (use scripts/fourmolize.sh)
[x] Cabal files are formatted (use scripts/cabal-format.sh)
[x] hie.yaml has been updated (use scripts/gen-hie.sh)
[ ] Self-reviewed the diff

Using (CompactForm Coin) everywhere turns out to be a great idea. The compactCoinTxOutL  makes it possible


undefined method `can_change_email?' for nil:NilClass at update me

trace.

Can't reproduce and can't come up with a way to make current_viewer nil, given a valid session.


is lightning and pytorch_lightning the same?

Bug description
Hi, I'm probably missing something obvious here, but here's the thing.
I installed lightning successfully, but when I want to import it:
import lightning as L
I got the error message:

ModuleNotFoundError: No module named 'lightning'

However, if I import it like this:
import pytorch_lightning as L
it works. And its version is 2.2.5, just like the one in the official website
Is pytorch_lightning library is really the same as library lightning? Because all examples on the website show this snippet:
pip install lightning
import lightning as L
What version are you seeing the problem on?
v2.2
How to reproduce the bug
No response
Error messages and logs
# Error messages and logs here please

Environment

Current environment
#- PyTorch Lightning Version (e.g., 1.5.0): 2.2.5
#- Lightning App Version (e.g., 0.5.2): -
#- PyTorch Version (e.g., 2.0): 2.1.2
#- Python version (e.g., 3.9): 3.10.13
#- OS (e.g., Linux): -
#- CUDA/cuDNN version: -
#- GPU models and configuration: GPU T4 x2
#- How you installed Lightning(`conda`, `pip`, source): pip
#- Running environment of LightningApp (e.g. local, cloud): cloud (Kaggle notebook)

More info
No response

Pytorch-Lightning is just a wrapper on Pytorch as mentioned here
Lightning is a frame-work which has many other features like :
app, pytorch, fabric, data, store

Each feature in Lightning is also released as a package... that's why you are seeing Pytorch-Lightning as a package.
Regarding your issue :
I have both installed on my local and I can import both modules ....
Hope I could clear your doubt...
I would appreciate any further discussion.

Thank you for your help, @Sar2580P. I just want to clarify a couple of things, I hope you don't mind.
So, if I install and import Lightning, I'll get many features in addition to Pytorch-lightning. However, if I only import the Pytorch-lightning, I will still need to import Lightning to be able to use, let's say, Fabric. Is that correct?
Regarding importing pytorch-lightning, I still need to import it as pytorch_lightning instead of just lightning. But that works for now. Can you please share your code to install and import Pytorch-lightning?

Its absolutely correct.
If you want to use features of pytorch-lightning from lightning then do following:
pip install lightning
import lightning.pytorch as L

Hope this helps


fix: Restore previous behavior ignoring exceptions when translating a…

… conversion parameter to an AnsiEscape enum

I see a proper fix was provided in https://github.com/ppkarwasz/logging-log4j2/commit/5ddac7cd8a1e7ffe944f28086e1726d4818922bd

@wleese,
Sorry, I forgot to comment on your issue report. Anyway, thank you for your issue report and PR. It is nice to see that someone does pay attention to Log4j2 warnings.

@ppkarwasz thanks for the quick fix!


组件命名为Title时会警告

Version
2.6.7
Reproduction link
https://new-issue.vuejs.org/
Steps to reproduce
组件命名为Title时会警告
There are multiple modules with names that only differ in casing.
This can lead to unexpected behavior when compiling on a filesystem with other case-semantic.
What is expected?
null
What is actually happening?
100%

请按模板认真填写对应的信息，并提供对应的重现，不要胡乱填写一个链接。


Local Dev not possible on Android emulator

Dear Nhost team,
When using an Android Emulator localhost is bound to the actual emulator, and to reach the host computer running the emulator one needs to query <IP_ADDRESS> in the emulator.
For local development, this is not possible with the nhost SDK as the client requires an region when the subdomain is not localhost.
This issue could actually extends to any development on local lan where the nhost backend is running on a device other than localhost (e.g. <IP_ADDRESS>), which is common in mobile development when testing an app on a physical device but still in local development mode.
I propose to allow all private local IPs (https://en.m.wikipedia.org/wiki/Private_network) to be used without a region, as reasonably a region would never be used in these cases.

I'd suggest not making assumptions and adding an option to simply specify the backend URL without any logic behind it. Otherwise this has the potential to fail if users are using some internal domain (i.e. my-backend.local) or an unorthodox IP.

Hello, i am missing url setting too.
maybe someone could do PR ? i dont know go.
i found where is this hardcoded.
https://github.com/nhost/cli/blob/8974a34488a043c4403f36882bf7ca852764f423/nhost/compose/config.go#L182
until
https://github.com/nhost/cli/blob/8974a34488a043c4403f36882bf7ca852764f423/nhost/compose/config.go#L204


Fixing bolded terms in System Description

Did a very brief review, no major errors or anything that stood out.


Enable setting the queue name

Enable manually set the http.sys queue name for the application. This helps detect potential application-level problems by monitoring the queue-length counter.
Moved from https://github.com/aspnet/Home/issues/1417

Thanks for your feedback. We appreciate your letting us know about the problem you've encountered or suggestion but we are not planning to take further action on this issue because our focus has been on issues with significantly higher customer interest and issues impacting a broad number of customers.


Hugo.Extended build Under libstdc++.so.6.0.19

Hello,
Here is my proposal.
When I use CentOS 7 to install the hugo-extended, it always gets error which shows the version of libstdc++ is too low.
hugo: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by hugo)
hugo: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by hugo)

Under centos 7, the default enviornment is

gcc  4.8.5
libstdc++.so.6.0.19
glibc 2.17

If the forward compatibility is promised by hugo-extended, that will be very helpful!

This has been discussed before. This project isn't big enough that we can provide binaries for more than the most common setups. If that doesn't work for you, I suggest you build it from source.


Need to remove usage of obsolete method

https://github.com/aspnet/Docs/blob/master/aspnetcore/tutorials/first-web-api/sample/TodoApi/Startup.cs#L12
The no param UseInMemoryDatabase has been deprecated (see https://github.com/aspnet/EntityFramework/blob/rel/2.0.0/src/EFCore.InMemory/Extensions/InMemoryDbContextOptionsExtensions.cs#L83). This code needs to be updated.

using the latest Microsoft.EntityFrameworkCore 2.0.0 and Microsoft.EntityFrameworkCore.InMemory 2.0.0, the statement:
services.AddDbContext(opt => opt.UseInMemoryDatabase());
gets error:
 DbContextOptionsBuilder' does not contain a definition for 'UseInMemoryDatabase'

The solution is to include a name as follows:
services.AddDbContext(opt => opt.UseInMemoryDatabase("TodoList"));

@Rick-Anderson
The solution is to include a name as follows:
services.AddDbContext(opt => opt.UseInMemoryDatabase("TodoList"));
Tried above solution and didn't work.


Setup Help. Have dug through wiki and forums.

Hello. Despite reading through the wiki and forums I am still struggling to get this miner to run properly.  I’m trying to set this miner up in stealth mode. Mining ETH on 2minerspool. I have this pool selected: us-eth.2miners.com:2020
Connection scheme: stratums(SSL/TLS)
Under mining, stealth is selected.
Idle mining is on: max GPU 20% idle 80%
(Thinking issues may lie here, having difficulty understanding idle mining. Have also tried with idle mining off and miner still wouldn’t work.)
I have 5 stealth targets outside of the default ones.
No remote configuration setup
Startup enabled: save path Temp
Watchdog on
Assembly set as service64
No Icon
Options: run as admin on(user account control settings and all windows firewall disabled on this computer though)
When I build and use the checker, it won’t work.
I am using payout with a nano address. Could that possibly be effecting this?
I want the miner to use max 80% GPU. Idle mining isn't necessarily important as I will only be running this miner during certain times of the day. I haven’t noticed a function to achieve this with the builder so I just planned on making a startup task that looks like Nahimic audio or another similar system function.
Please advise and thank you in advance.

Firstly you're using a very old builder version so you should probably update. Secondly you have the wrong pool entered, since you use SSL (stratums) you should use their SSL port us-eth.2miners.com:12020.

Thank you for the very quick response. I have updated my builder version and corrected the pool port. This is currently what my checker says:

.
What would a successfully checked miner look like?
Also, if idle miner is off, will setting the max GPU at 80% still set max GPU usage at 80%?
Thanks!

Thats what I figured.
attached here.
SilentMinerTWillikers.zip
Thanks again for the help.

You need it to set it to "stratums (SSL/TLS)" now when port 12020 is used.

Ah, sorry overlooked that.
I just adjusted that setting, and miner checker seems to be showing now.
Thank you very much for the help.

One last quick question. Also, if idle miner is off, will setting the max GPU at 80% still set max GPU usage at 80%? I just want to confirm for the longevity of my equiptment.

Yes if "Idle Mining" is disabled then it will always use the "Max GPU" percentage. If "Idle Mining" is enabled then it will use the "Max GPU" percentage while the computer is active (mouse and keyboard activity within the "Idle Wait") and the "Idle GPU" percentage while the computer is idle.

Great. Thank you. With regards to the stealth targets, does the miner stop during target activation and automatically restart when the target .exe is stopped?

Yes exactly, it will pause the miner while any of the programs listed in it are open and then resume when none of them are open.


Suggest snippets only for "new" lines

👋🏼,
One annoyance I'm having is that I sometime get snippet suggestions when they really shouldn't be suggested. Is it possible to somehow configure snippets to only be valid as suggestions in specific use cases?
An example is that arr.<cursor> isn't a valid location but the follow is:
function() {
  <cursor>
}

I'm using vsnip, if that makes any difference.

@sQVe Did you still have,this problem?

@hrsh7th Yes. I'm unable to create a keyword_pattern that matches empty lines or lines with only whitespace.

any news here?

any news ?

PR welcome :)

keyword_length = 0  worked for me  and tabnine source

This one was fun for me. I found out that in addition to cmp config I have null-ls null_ls.builtins.completion.vsnip. There is a reason why trying to configure vsnip in nvim-cmp does not affect vsnip for null-ls. Removing null-ls builtin solved the problem for me.


[question] is it necessary to call db.close when you're done with the connection?

Hi, in my application I create secondary DB connections for some long-running operations (per the recommendation of http://mongodb.github.io/node-mongodb-native/2.0/reference/faq/#how-can-i-avoid-a-very-slow-operation-delaying-other-operations). Is it necessary to call close on them when done? i.e.
var db = mongojs(...);

db.collection('foo').update(..., function(err) {
  db.close();  // Is this necessary?
});

What happens if I don't call close and db just drops out of scope and gets garbage collected?

Uhm, I think db does not drop out and the connection stays alive. Your long-running process will hang until one of the endpoints gives up (you either call db.close() and close connection or mongo will close connection after).

Ok thanks!


Rebuild for libboost 1.82

This feedstock has an unusual combination of boost dependencies that managed to trip up the logic of the piggyback migrator. Do it manually.

@conda-forge-admin, please rerender


Move IDE-related projects to the IDE platform directory

This PR moves some of the IDE-team owned project residing in the subprojects directory to the projects/ide directory.

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

❗ Please update summary_table.cm with the same platform changes as well.

Done, PTAL

@bot-gradle test and merge please

Your PR is queued. See the queue page for details.

I've triggered a build for you. Click here to see all failures if there's any.


Improve intra-site links (1)

This attempts to improve intra-site links so that the links can be automatically translated to localized versions.
xref: #18403
This PR is about the concepts/architecture and concepts/cluster-administration directories.

/assign @zacharysarah @jimangel @kbarnard10
Assigning this to SIG chairs because this PR has some site wide implications.

As a reference for how Hugo ref work: https://gohugo.io/content-management/cross-references/

This kind of commit is likely to trigger a conflict with work for v1.18
How about holding off until that release is out?
@tengqm you could have this PR target just content/en/docs/concepts/example-concept-template.md and then do more pages in a future PR. Does that approach work for you?

This kind of commit is likely to trigger a conflict with work for v1.18.
How about holding off until that release is out?

I don't think this PR is anything different from a typo fix. It breaks nothing.

you could have this PR target just content/en/docs/concepts/example-concept-template.md and
then do more pages in a future PR. Does that approach work for you?

I was hoping that I can find out how many gochas out there when applying this change to more docs. A change on one page is not enough for this purpose. With this PR, if you review carefully, you will find out that:

Links to images are not changed, although they are "intra-site" links. The reason is that Hugo doesn't process the url function in that case.
Links to generated API docs are not changed because we have embedded shortcodes if we do so. Keeping them unchanged seems reasonable because ... no one will translate the auto-generated API reference, right?
Links to some missing pages were treated as redirections (or event redirections of redirections) previously. This will not work for url. We will have to point the link to the real markdown.
Missing links can be found immediately while building the site. This is a bonus.

Thanks @tengqm—you've answered and addressed my concerns around waiting for the v1.18 release.
I endorse the aim of this PR: /approve
It seems worth discussing this at a SIG Docs weekly meeting too.

This attempts to improve intra-site links so that the links can be automatically translated to localized versions.
xref: #18403
This PR is about the concepts/architecture and concepts/cluster-administration directories.

@tengqm , I am reading through the changes. While this is an isolated PR, it seems as if you are proposing that this is an option for changing all intrasite links (and that more PRs would follow)?
Could you explain a bit more about how the shortcode (ref or relref) works throughout the site. I will look at the generated pages to view the format of the links.
Are there other sites using Hugo that have the same issue (or have solved the issue). What does Hugo recommend in this case?
I only see changes to the English content. What would the changes look like to the same files only localized?
From, https://gohugo.io/content-management/cross-references/#use-rel-and-relref
Hugo is flexible in how we search for documents, so the file suffix may be omitted.
{{< relref path="document.md" lang="ja" >}}

I only see changes to the English content. What would the changes look like to the same files only localized?

That's a really good question. Maybe for a follow up PR? Maybe it needs to be in this one?

@kbhawkey There was a PR for testing (https://github.com/kubernetes/website/pull/18374). If we use the ref way of spelling  out URLs, no localization team need to change '/doc/something' to '/zh/doc/something' or '/fr/doc/something'. Also please see discussion in #18403.

To recap my understanding (which may be inaccurate) 😄 :
Currently, each localized page has to modify the intrasite links on a page to point to a link that represents a localized version of some page. If the link is updated to point to a page that does not exist (not translated), that is a problem.
If the link is not updated, then the link points to the English version of the page (which is desirable if the page does not exist, but not desirable if there is a localized version of the page)?
The use of ref or relref will cause a build failure (Hugo) if there is not a translated page referred by the intrasite link? Will the link fall back to the English version of the page? What is the solution in this case.

@kbhawkey Seems your understanding had been verified by the experiment I did in #18403. Missing page won't pass Hugo compilation. This might be a good thing because it means all dangling links in the localized sites are not detected as early as possible. In the experiment #18403, the Chinese version of Deployment page was missing. Hugo detected that and complained.
Falling back to English version could be an option. However, from user's perspective, the only difference is that we are replacing a 404 page with an English page that the user cannot read. (They may prefer reading the English site if they could).
To make sure Hugo can still compile your current localization PR which links a page that doesn't exists yet, you may want to commit a "placeholder" page. For example, it can be an empty page with a "header 1" saying "TO BE TRANSLATED".

an empty page with a "header 1" saying "TO BE TRANSLATED".

At the moment, the style we have fills in the navigation with (marked) links to the English originals. I'd like to keep that behaviour. To me, serving an “under construction” type page with a 200 response wouldn't be an improvement.
It'd be neat to use CSS or some other technique to highlight if a link is going to switch localization on the reader.

@sftim If there is a strong opinion for auto-redirecting missing pages in localization to their corresponding English version, we can do that. Actually, this technology has been proposed before. We will need to introduce some shortcodes for that. I was not voting for that approach because I'm unsure whether the website team welcomes such code.

Perhaps (separate PR): the 404 page can something like “sorry, /ko/docs/home/foobar/ is 404. [AJAX query] If you speak English, there's /docs/home/foobar/ though?”

To make sure Hugo can still compile your current localization PR which links a page that doesn't exists yet, you may want to commit a "placeholder" page. For example, it can be an empty page with a "header 1" saying "TO BE TRANSLATED".

Some more thoughts:
With the ref shortcode, it is not possible to "switch" between localized content and the en pages. Is this what readers want?
What is the percentage of translated pages per localization? Some localizations may have a larger number of "empty" pages.
Back to the Hugo build question. If the en pages (in a docs section) update to use ref links then all corresponding localized pages would also update with ref links, correct?
From what I read, I would expect a largish number of build failures unless "substitute" pages are set to create (when a link points to a non-existent localized page).
Do you want to configure Hugo to produce this localized "placeholder" page,
https://gohugo.io/content-management/cross-references/#ref-and-relref-configuration
Variables:
refLinksErrorLevel (“ERROR”)
refLinksNotFoundURL
OR create a static, localized "substitute" page for every missing page?

a static, localized "substitute" page for every missing page

The trouble then is that, as I understand it, Netlify will always serve that with a 200 status. If it were possible to serve a staticly rendered, relevant 404 page then I'd be really fine with that.
It's very likely that there will be localizations with missing content and in the future I expect that to become more common.

@kbhawkey

With the ref shortcode, it is not possible to "switch" between localized content and the en pages. Is this what readers want?

Not sure about this. ref was not designed with an option that allows you to fall back to a default language. Readers can always switch between languages using the language dropdown list in the main navigation bar. Falling back to English site can be achieved by introducing a shortcode (see #18678). However, as a reader, my experience is not as good. Why am I redirected to English page here? Is this a bug?

What is the percentage of translated pages per localization? Some localizations may have a larger number of "empty" pages.

No idea. Current situation is that if we don't add the /<lang>/ prefix, all links in the localized pages seem to work and they bring you back to the English site. We have no idea how many pages are not translated because 1) during build time, Hugo is not complaining; 2) during runtime, links are "working".

Back to the Hugo build question. If the en pages (in a docs section) update to use ref links then all corresponding localized pages would also update with ref links, correct?

No. Using ref in the English site is an attempt to ease localization rather than to break anything. None of the existing translation will break. It is up to the localization team to use ref or the more traditional way of markdown links. You can actually think of this as a typo fix. Every localization teams can take their own pace to make this transition. Once all transitions are done, no team needs to add the /<lang>/ prefix in the localized pages.

From what I read, I would expect a largish number of build failures unless "substitute" pages are set to create (when a link points to a non-existent localized page).

Hugo build will fail if and only if you are using ref in the a localized page and the target referenced is missing. This is not gonna happen automatically for all pages at once.

Do you want to configure Hugo to produce this localized "placeholder" page, OR create a static, localized "substitute" page for every missing page?

I'd go with placing a "to be localized page". If such a page can be reused by customizing Hugo, that would be great. Creating "placeholder" pages for every missing target is less ideal. I agree. If we can use refLinksNotFoundURL, it may address the concerns from @sftim as well.

The key outcome I have in mind is to keep the hyperlinks in the navigation and in What's Next sections, so that even if a localization hasn't got localized versions of those target pages the links are there.
It'd be nice to put some sort of class on the hyperlinks so that CSS can then tweak how they are rendered and hint that following the link switches localization.
If we adopt this change and a localization wants to revise a page to use it, without translating every page that it links to, what are that localization team's options?

So the primary concern, again, is this:

If we adopt this change and a localization wants to revise a page to use it, without translating every page that it links to, what are that localization team's options?

There are several options:

The team add a "place holder" page as the link target which says the localization is being worked on and optionally providing a link to the English source page.
The team decides to use the current markdown hyperlink syntax during first round translation. When the team feels comfortable to transit to use the localization-friendly links (i.e. ref syntax) provided that most contents have been translated, it performs a global scan and replace the links.
The site admin can choose to have Hugo produce warnings rather than errors, as commented by @bep (https://github.com/gohugoio/hugo/issues/6747#issuecomment-574071260). Such links will produce 404 during runtime, which in my opinion should be okay.

If we do want some deep customization about the behavior, we can introduce a shortcode as proposed in #18678. We can then introduce the "fallback to English" feature, customized link appearance feature etc. The tax we need to pay is to maintain a shortcode by ourselves.

I have not read this entire thread, but I would strongly recommend that you look into this:
https://portable-hugo-links.netlify.com/
Would require a Hugo update.

I think this might be something that can be merged and iterated on top.
For example, looking into https://portable-hugo-links.netlify.com/ after https://github.com/kubernetes/website/pull/19028 merges.
/lgtm

Hi. I am reading about upgrading Hugo to take advantage of "portable links". Would this work or not? Introducing the ref shortcode into several English files starts the process of converting the entire site (Are we suggesting that authors should use this shortcode for intra-site links?). I'd rather see a more complete prototype or test out the links/site with the latest version of Hugo.

@kbhawkey Thanks for the suggestion. I did take a look at the markdown render hooks and the example snippet. My current impression (could be wrong) is that it is not directly applicable to our multilingual case.
The main concern to the approach proposed here, as commented previously, is about the handling of missing links. If we use the "markdown render hooks", we will be introducing some shortcode which has to deal with all kinds of links and all languages, while at the same time solving the missing links issue. Consider the following cases:

[scheduled](/docs/concepts/scheduling/) should resolve to /docs/concepts/scheduling/_index.md rather than /docs/concepts/scheduling.md.
[Kubernetes control plane](/docs/concepts/#kubernetes-control-plane has to resolve to /docs/concepts/_index.md#kubernetes-control-plane
[Kubelet authentication and/or authorization](/docs/admin/kubelet-authentication-authorization/) has to resolve to /docs/reference/command-line-tools-reference/kubelet-authentication-authorization.md
If the link for anchor [kubenet] is specifed in place, we have to take special care. See https://github.com/kubernetes/website/pull/19526/files#diff-0c2402f7cbb30d8f6e03ddddbfeb5877L355
There are cases where we are already using Hugo functions. Dealing with these links are also challenging. E.g. https://github.com/kubernetes/website/pull/19526/files#diff-f2432e071010ae0fdde5d8d937270de4L312

I'm not convinced that a simple render hook can resolve all of the above problems.

@tengqm - in a SIG Docs meeting, @kbhawkey made a compelling case that Hugo could render traditional Markdown hyperlinks in a localization-friendly way:

if the localization has the target page, link to that
if not, link to the English page instead
keep the navigation working too

Localizations might still want to adjust links that include fragment identifiers. However, most of the time when a localization adds a new page the rendering approach that @kbhawkey suggested sounds like it will let links to that new page “just work”.
I hope you're convinced now that a different approach from this PR is that way forward. What are your thoughts?

@tengqm - in a SIG Docs meeting, @kbhawkey made a compelling case that Hugo could render traditional Markdown hyperlinks in a localization-friendly way:
* if the localization has the target page, link to that

* if not, link to the English page instead

* keep the navigation working too

Localizations might still want to adjust links that include fragment identifiers. However, most of the time when a localization adds a new page the rendering approach that @kbhawkey suggested sounds like it will let links to that new page “just work”.
I hope you're convinced now that a different approach from this PR is that way forward. What are your thoughts?

Hi @sftim @tengqm . I looked into this a bit further (PR #20114) and left some comments.
I still think that using a shortcode to publish links is not user/author friendly.
Is there a question about publishing a completely localized version of the content versus continuing to publish content that is a mix of English and localized content?
The English pages are marked (EN) in the left nav tree. It is very clear which pages are localized. I think everyone agrees that updating links can be difficult and reading content with incorrect links is not a great user experience.
I discovered that automatically changing/publishing a link from what is explicitly written in the Markdown file is not straightforward.
Ideally, we want the Markdown file to be the source of truth and generate from this source.
I commented that perhaps what is needed is a script to notify/alert the author that there are links that should be updated to the localized version (a localized version exists, the script lists the required link changes). The script could also check that the English version of the link exists (or suggest a change). The author needs to update the page. What do you think?

I still think that using a shortcode to publish links is not user/author friendly.

Totally agree.

Is there a question about publishing a completely localized version of the content versus continuing to publish content that is a mix of English and localized content?

There have been opinions that a mixture of English and localized content would be the case for a long time. That was also the reason why people wanted the "auto falling back to English" option.

I discovered that automatically changing/publishing a link from what is explicitly written in the Markdown file is not straightforward.

Yup. Automation is difficult, if possible at all. That is why I tried to do all these conversions once for all, so that at least no localization team needs to handle redirected links or links to "foo/bar/_index.md" files.

I commented that perhaps what is needed is a script to notify/alert the author that there are links that should be updated to the localized version (a localized version exists, the script lists the required link changes).

So ... you mean for all French translations, we warn them that there are links not started with "https://" or "#" and they should be revised to "/fr/something"?

The script could also check that the English version of the link exists (or suggest a change).

This is gonna be hard. We have many redirections in the English markdown.
With all the above observations, I'm NOT implying that this PR is the best option going forward. The advantage of this PR is:

it works
it introduces no new shortcode to maintain
as a happy side effect. it cleans the redirected links in the existing contents

The cons, as I see it:

converting all existing links is a HUGE job;
we are forcing authors to use the ref shortcode for all intrasite links;
when a ref used in a localized page points to something not translated, an error is thrown. This can be made into a warning, so not a huge barrier;

abandoned.

@tengqm Hi, wondering on how you change the whole directory link here? Any provided scripts to change the link for each of localization directory?

@irvifa When I was working on this, I had to check each and every link in a markdown because I don't know how many variants out there. With this PR, I think I gained a better understanding of the types of links we need to deal with and the "proper" way to deal with them.
Later on, @kbhawkey proposed a script for identifying link problems. That is a good starting point. Maybe we can leverage that script to semi-automate this site-wide change.
WDYT?

@tengqm Yes, absolutely I agree with the leverage of doing semi-automate, however using site wide will cause a massive PR because it will affect all available localization, instead how about using that script only for each of the localization? This way each localization team can use the script autonomously and refrain the incoming massive PR. wdyt?

using site wide will cause a massive PR because it will affect all available localization

Yes, it will be a pain in the short term. Just like what we have done for site theme changes. Once the change to English content is landed, no localization team need to customize each and every intra-site links. The revised links just work for all languages.

how about using that script only for each of the localization? This way each localization team can use the script autonomously and refrain the incoming massive PR. wdyt?

That brings us back to the intent of this PR. We can leave the English site as is. Then for all localization teams (there are 14 of them now), the same link will be changed 14 times, each by an individual localization team. Yes, script can help detect issues, hopefully. What I am trying to argue is that the primary reason we switched to Hugo was that Hugo has a "better" support for localization. Simply by replacing links like this
[CSI](/docs/concepts/storage/volumes/#csi)

with something like this
[CSI]({{< ref "/docs/concepts/storage/volumes.md#csi" >}})

ALL localization teams will benefit from it. Again, we have 14 localization teams now.

@tengqm Understood, would you like to rebase your branch first? I see there’s lots of conflict

/close
This doesn't seem a viable approach to take for the docs community.
We are tracking down this in a different way (#22541)


Bump helm-charts to consume the new mongodb catalog service

Fixes #1688

Codecov Report
Base: 39.59% // Head: 8.63% // Decreases project coverage by -30.95% :warning:

Coverage data is based on head (c3c55a5) compared to base (a9fda46).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff             @@
##             main   #1693       +/-   ##
==========================================
- Coverage   39.59%   8.63%   -30.96%
==========================================
  Files         168      85       -83
  Lines       12492    8338     -4154
==========================================
- Hits         4946     720     -4226
- Misses       6811    7570      +759
+ Partials      735      48      -687

Flag
Coverage Δ

acceptance-apps
?

unittests
8.63% <ø> (ø)

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

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

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


[tl_detector] get and cache the param setting

will also have less logs on the console.

right. probably I just want to set the logging level to non-debug..


OSX installation

OS version: 10.13 (High Sierra)
GO version: go version go1.9.1 darwin/amd64
cachet-monitor version: 3.0 - cachet_monitor_darwin_amd64
When I try running ./cachet-monitor it says -bash: ./cachet-monitor: Permission denied
I'm able to build and run hello world program here: https://golang.org/doc/install#testing
Please let me know what I've missed.
Thanks!

hi, you may be missing the execute permission on the file.
To fix this, simply run: chmod +x ./cachet-monitor and then try to execute the file again

@matejkramny Thanks! That solves the issue 👍


Latex Support

Latex Support
How to add the latex support.
I tried the following but this isn't working
{
      resolve: 'gatsby-theme-kb',
      options: {
        contentPath: path.resolve(__dirname, 'content'),
        rootNotes : 'readme',
        wikiLinkLabelTemplate: '[[{{ title }}]]',
        getPluginMdx(defaultPluginMdx) {
          defaultPluginMdx.options.gatsbyRemarkPlugins.push({
            resolve: 'gatsby-remark-prismjs',
            options: {
              noInlineHighlight: true,
            },
            resolve: `gatsby-remark-katex`,
            options: {
              // Add any KaTeX options from https://github.com/KaTeX/KaTeX/blob/master/docs/options.md here
              strict: `ignore`
            },
          })
          return defaultPluginMdx
        },
      },
    },

As I'm new to  gatsby and gatsby shadowing. Please correct me, where am I wrong.
Thanks.

@Adam-Al-Rahman I'm on vacation now  and have no access to my laptop.
I will try to look at it three days later.

@Adam-Al-Rahman I'm on vacation now and have no access to my laptop. I will try to look at it three days later.

Ok, enjoy your vacation.
Btw Thanks for replying.


Passing date into subsequent delay operators seem to accumulate delay

Bug Report
Current Behavior
When using the delay operator multiple times, and each time passing a date object into it, subsequent delay operators seem to accumulate the date differential from previous delay operators. See reproduction url for a code example.
Reproduction

REPL or Repo link:
https://stackblitz.com/edit/typescript-rx-playground-4fssrc?file=index.ts

import { map, delay, tap, take } from 'rxjs/operators';
import { Observable, of, interval } from 'rxjs';

// console log every 1 second
interval(1000).pipe(
  take(17)
).subscribe(num => {
  if (num === 10) console.log(num + `: Expecting to see 'innitTimePlus10s' here...`);
  else console.log(num);
});

// save time on file init and then create date for 5 seconds and 10 seconds from init
const initTime = new Date();
const initTimePlus5s = new Date(initTime.getTime() + 5000);
const initTimePlus10s = new Date(initTime.getTime() + 10000);

// console log after 5 seconds after init, and again after 10 seconds _after init_
of(null).pipe(
  delay(initTimePlus5s),
  tap(() => console.log('initTimePlus5s')),
  delay(initTimePlus10s),
  tap(() => console.log('initTimePlus10s')),
).subscribe();

Expected behavior

/**
 * Expected result:
 *
 * 0
 * 1
 * 2
 * 3
 * 4
 * 5
 * initTimePlus5s
 * 6
 * 7
 * 8
 * 9
 * 10
 * initTimePlus10s
 */

Environment

Runtime: Chrome 79.0.3945.117
RxJS version: 6.5.2

Yeah. This is a bug. You can see here that when the delay operator is used, a relative delay is calulated using the absolute time:
https://github.com/ReactiveX/rxjs/blob/56e7cebd211d93b9958e1ec508052beb8927604a/src/internal/operators/delay.ts#L60-L65
However, that calculation doesn't - a cannot easily - account for other delay operators in the composed observable chain that are also passed a Date.

Yep as you say, not an easy fix - probably a complete rewrite of the operator to not use date differentials.
For anybody else following this, the workaround is pretty simple:
of(null).pipe(
  delay(initTimePlus5s),
  tap(() => console.log('initTimePlus5s')),
  delay(initTimePlus5s.getTime() - initTimePlus10s.getTime()),
  tap(() => console.log('initTimePlus10s')),
).subscribe();

Unfortunately it's very easy to be caught out by this bug.
Thanks for your help.


Eventdate not DwC compliant

DarwinCore standard for eventdate includes the option of including "/" for date ranges as in:
2000-12-05/2000-12-13
This format is not accepted using the DwC-A import in Sandworm: see https://sandworm.taxonworks.org/tasks/dwca_import/index?import_dataset_id=51

@LocoDelAssembly Seems that range is OK, at least according to the wiki version of the ISO standard.
https://en.wikipedia.org/wiki/ISO_8601
https://dwc.tdwg.org/terms/#dwc:eventDate
We need a ISO gem for processing dates, perhaps this? https://github.com/arnau/ISO8601/blob/main/docs/time-interval.md

@mjy will check that gem, but definitively adding support for intervals.


How do I get my bot online?

Hi SXK ( SniperXKiller ) here,
How do I turn on my bot? When I tested it, it was offline.

dont close the console after running node bot.js

thanks


tests: add a new action to test the latest code of the current PR with Kong.

This PR build the latest source code of Kong together with the latest code from the PR in the lua-resty-lmdb repository as a testing environment.
The following are the items that need to be improved:

modify the triggering condition of the action
add caching step(This requires discussion. I believe that the step "Build Kong with current commit" cannot be cached, and only the "Setup tools" can be cached.)

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

cc @fffonion

running action instance: https://github.com/sabertobihwy/lua-resty-lmdb/actions/runs/5184722890/jobs/9343898937

@sabertobihwy Is this still needed?


Start markdown

[x] Adding a head
[x] Adding an image
[x] Adding a code block
[x] Adding a task list
[ ] Merge your pull request


Reciever KS - Missing LOINC in OBX3 Error

Problem Statement
We received an email from Kansas that they received an error message last evening stating a missing LOINC in OBX3.
What you need to know
The MSH.10 is e4c27931-0320-4f26-9.
Acceptance Criteria
Please resend with LOINC
To Do
Engineer to investigate and resend with LOINC.
Additional Comments
KS - Onboarding #6408

I am closing this ticket.  It is done.


Fix condition in ClassDB tests that should return

Also changed the name of the test macros to be clearer.
Fixes #38889

Thanks!


ZOOM IOS

WHEN USE IOS CANT MAKE ZOOM

please elaborate more on this, what is expected and what is actual output, what do you mean zoom in detail?

closing issue since there is no updated, feel free to reopen with more detail


Support for subsets, not ignoring woff2 font files, clearer fontBaseDir semantics, preventing multiple downloads

Here are multiple changes I needed to do when trying to use this library. The font, I was trying to use locally, was: http://fonts.googleapis.com/css?family=Open Sans:400italic,700italic,400,600,700&subset=latin,latin-ext
Few notes:

I do not know why you were handling .woff2 fonts differently. I removed that because I needed the .woff2 font. I hope this is fine.
I changed the extension of the CSS file from .styl to .css. It is not clear to me, why it was set to .styl, because .css works better (syntax highlighting, all servers set correct content-type, etc.).
I think, the function to clean the CSS was there mainly for parsing the CSS. I removed CSS cleaning when writing the CSS to the local file, because it is not necessary there (and the "cleaned" CSS was also not correct).
I changed the logic of fontBaseDir option. It was used to specify a prefix that should be removed from the fontDestination + '/' + filename in the CSS file. Now it is used to specify a prefix that should be added before the filename. That was needed for my case, when the relative path from CSS to the font file was ../fonts/font.woff2 - it could not be achieved without this change. I also think it is now more simple to use.

Best regards,
PePri

+1


Include Immutable.js?

I'm usually for minimal boilerplates, but with how well it works with Redux, Immutable.js has become an automatic "every project" add for my team. Anyone that's not using it with Redux is missing out, IMO!
Of course, I understand keeping the boilerplate as minimal as possible and just asking users to make their own decision as well.

Hey, thanks for the comment. Would you be interested in submitting a PR?


Allow passing model parameters for PyTorch server

/kind feature
Describe the solution you'd like
Currently we can only pass ModelClassName on Pytorch spec, however most of time ModelClass requires additional parameters such as EmbeddingSize and Layers etc.
This is an example
class TorchTextClassifier(nn.Module):

    def __init__(self, vocab_size, embedding_dim, seq_length, num_classes,
                 num_filters, kernel_size, pool_size, dropout_rate):
        super(TorchTextClassifier, self).__init__()

        self.embeddings = nn.Embedding(num_embeddings=vocab_size, embedding_dim=embedding_dim)

        self.conv1 = nn.Conv1d(seq_length, num_filters, kernel_size)
        self.max_pool1 = nn.MaxPool1d(pool_size)
        self.conv2 = nn.Conv1d(num_filters, num_filters*2, kernel_size)

        self.dropout = nn.Dropout(dropout_rate)
        self.dense = nn.Linear(num_filters*2, num_classes)

Anything else you would like to add:
The proposal is to support passing additional parameters on pytorch spec
  default:
    predictor:
      pytorch:
        modelClassName: TorchTextClassifier
        modelClassKwargs: {'embedding_size': 128, 'n_layers': 6}

@cliveseldon @animeshsingh @ellis-bigelow @rakelkar what do you think ?

Why do you need the parameters at inference time. The example seems very similar to https://cloud.google.com/blog/products/ai-machine-learning/ai-in-depth-serving-a-pytorch-text-classifier-on-ai-platform-serving-using-custom-online-prediction
Are the parameters not just needed for training?

@yuzisun The current assumption of the server is that the user would save their model using torch.save(model, PATH) as opposed to passing the model state dictionary to torch.save, at the end of the training loop. This means that the deserialisation procedure should already know the state of the model and passing the arguments for the constructor is not necessary.
Does this make sense?

@alexcoca currently we are doing torch.save(model.state_dict(), PATH) since this is suggested way on pytorch website https://pytorch.org/tutorials/beginner/saving_loading_models.html#saving-loading-model-for-inference. Saving the entire model seems unsafe.

In this case, the parameters have to be passed, as you suggest, so that the model instance can be created and instantiated as opposed to unpickled, which is the current assumption.

@yuzisun In the example of pytorchserver, the modelClassName is 'Net', but if i will use the ResNet to make inference, the initialization of modelClassName 'ResNet'  __init__(self, ResidualBlock, num_classes=10) must contain the other  Class 'ResidualBlock' , how can i solve the problem ？Thank you ~

is ResidualBlock the actual class ? that can be a bit tricky.. my idea is to pass json which then can be turned into a python dict and pass to the model class constructor.

is ResidualBlock the actual class ? that can be a bit tricky.. my idea is to pass json which then can be turned into a python dict and pass to the model class constructor.

Thanks @yuzisun, your idea is brilliant, i will try it ~~

@WangAllen851018 are you planning to contribute this? If this is case I can point you where I left off.

@WangAllen851018 are you planning to contribute this? If this is case I can point you where I left off.

Yes, i have the plan to contribute this part of pytrochserver, do you have some other suggestions for the problem?

@WangAllen851018 are you still planning to contribute to this? This is a feature we are interested in as well

@yuzisun @WangAllen851018 @nlarusstone
Hi, WangAllen851018 and I are in the same team. Now we have the solution of this issue, and we want to contribute our code to kfserving project. But we don't know how to do that (We already have the CLA).

@WangAllen851018 are you still planning to contribute to this? This is a feature we are interested in as well
Yes，the work will be contributed to this by the member of our research program @zhangrongguo in #727

@WangAllen851018 are you still planning to contribute to this? This is a feature we are interested in as well

@nlarusstone Yes，the work will be contributed to this by the member of our research program @zhangrongguo in #727

Would you guys like to join our WG meeting on 3/18 9am PST to discuss this? If it is too late for you we can schedule a special topic meeting on this.

@yuzisun @WangAllen851018 @Iamlovingit
We will attend the WG meeting. By the way, what materials should we prepare? And could you send us the meeting link?

@WangAllen851018 @Iamlovingit @zhangrongguo  Write a google doc with the proposal would be helpful, the zoom link is https://zoom.us/j/920703993 and the coming WG meeting is on 3/18 9am-10am PST. Please also join the KFServing slack so that we can chat there also. We are excited to talk to you guys!

@yuzisun
Hi, I want to know how to join the slack channel.
The searching result of kfserving is empty.

When I clicked the link in your mail, it let me fill the slack url. But I am not sure how to fill it.

@zhangrongguo my bad, can you join kubeflow slack and then find the #kfserving channel ?

@yuzisun @WangAllen851018 @Iamlovingit
If you guys have any requstions about our proposals, please feel free to tell us. And if you have the discussing results, please also let us know. Thanks very much!


Add imageclass

lemme fix checkstyle or someone can merge first and ill fix it in another pr later. up to the reviewer


Smooth image load

Close #28
Inspired by https://github.com/Astrocoders/react-image-smooth-loading

wow this is awesome!

Please merge master branch here, I fixed the travis problem related with size command 👍

I've moved some of the re-used styles to a separate file


URL namespaces

not sure we have these

@axoplasm Is this done?

No, it's should go into the parking lot. It's a subset of #369, which is an ongoing task


libxx: fix/suppresss warnings

Summary
libxx: fix/suppresss warnings
Impact
Testing

Maybe since libxx supports exceptions we can implement a trivial bad_alloc exception when exceptions are on

@v01d maybe. if CONFIG_CXX_EXCEPTION=y. anyway i'm not going to implement it in this PR.

Sure, just mentioning it.


Missing contents of specific tool directory doesn't prompt for an install

Describe the bug
Sorry if this has already been raised, I searched issues and didn't come across anything that looked familiar.
There have been a few instances where we've had mise run an install of a specific tool chain (node/ruby for example) where the directory of the tool exists but the contents are either non-exist (directory completely empty) or there has been a missing bin/ directory. Here are 2 examples of what I've seen:
Missing bin/ directory:
ls ~/.local/share/mise/installs/node/22.8.0
include/  lib/  share/  CHANGELOG.md  LICENSE  README.md

Completely empty directory:
ls ~/.local/share/mise/installs/node/22.8.0

This might be describing 2 separate problems, but with both of these issues mise reacted like everything was "installed" and kept popping up with errors around mise No version is set for shim: node which led us astray a bit and not understanding why this was reporting this outcome.
To Reproduce
Delete the bin/ directory or empty the contents of one of the version directory of any tool and see the output.
Expected behavior
Not sure the best way to resolve this, because it might be different with plugins or different tools, but it sounds like it could be a better/safer approach if the bin/ contents are checked as the "source of truth". If the binary itself is missing, then mise could consider this tool not installed and prompt for a install or at least reinstall. Something extra steps (if easily possible) to better validate an install has finished correctly would be nice.
Additional context
To the original problems here, I actually have no idea how the state of these tools had a missing directory like the bin/ at all or how contents were missing entirely from the folder. It's possible that halfway through a mise install there was an interruption and the install never fully completed? Not sure what else it could be.

During installation a cache file should be created to note that an installation is incomplete. Sounds like that functionality is not working correctly.
The problem here is we don't really know what the directory should look like. Even a completely empty bin directory may actually be ok in edge cases—though none come to mind at the moment.
That said, an entirely empty install directory probably is cause for concern.
I think the right path forward is for me (or someone) to verify the incomplete install cache file is working correctly.

The problem here is we don't really know what the directory should look like. Even a completely empty bin directory may actually be ok in edge cases—though none come to mind at the moment.

I figured this would be the case and expected this to be a difficult problem to resolve without understanding what "good" should look like.
To be fair this case I've only seen a few times across many different machines, but maybe a fully empty directory would be something more tenable to resolve.