MERGE_REFERENCES should remove "old" references

When merging
$a->mergeWith($b, MERGE_REFERENCES);

Then B should overwrite the references of A.
Or as the references of A might not be up-to-date anymore there could be an additional option like OVERWRITE_* for each merge option (where it makes sense).

I preffer MERGE_OVERRIDE_REFERENCES because sometimes you want the references of both. For example, you have a translations instance with the php templates entries and other with the javascript files entries and want to merge them.

I'm working on new more intuitive constants to configure the merge. You can see the docs here: https://github.com/oscarotero/Gettext#merge-translations
Now, some of the mergeable elements have constants like *_MINES and *_THEIRS, so, for example, to configure the references you can use Translation::MERGE_REFERENCES_MINES (to use only the references from $a, Translation::MERGE_REFERENCES_THEIRS (to use only the references from $b) and none (to merge both references).

I like this solution very much! Mine / Our and theirs is known from git and speaks for itself. Good choice! I really like your decisions and think that you are a good developer.

As you can see, the api changed a bit since that comment (created the Merge class, use of OURS instead MINE) but the main idea is this.
Hapy you like it.


breeze DenseMatrix multiplication * methods get errors

I am a freshman in scala language. Today, I want use breeze to solve a matrix problem. This is my code block:
val Matrix=breeze.linalg.csvread(new File(inpath))
//read a matrix from outside file then the pattern of the Matrix variable is (DenseMatrix[Double])
val block=dataT(::,start_index until  end_index)
//dataT just was a matrix return from the code of line 1 ,and block was a column slicing of dataT , we could see it pattern still same as Matrix
val ab = data* block  //get error,  the pattern of ab become a nothing!! Why??
I just want to implement a matrix-matrix multiplication. I don't understand why it won't work. Anyway I can bring out still can't solve the problem. Thanks

the data in val ab=data*block  equal  the Matrix

can you paste an actual example that you tried?
my guess is that it actually compiles fine, but your IDE is confused by
Breeze (this happens a lot)
On Thu, Jul 28, 2016 at 5:58 AM, a1300787<EMAIL_ADDRESS>wrote:

I am a freshman in scala language. Today, I want use breeze to solve a
matrix problem. This is my code block:
val Matrix=breeze.linalg.csvread(new File(inpath))
//read a matrix from outside file then the pattern of the Matrix variable
is (DenseMatrix[Double])
val block=dataT(::,start_index until end_index)
//dataT just was a matrix return from the code of line 1 ,and block was a
column slicing of dataT , we could see it pattern still same as Matrix
val ab = data* block //get error, the pattern of ab become a nothing!!
Why??
I just want to implement a matrix-matrix multiplication. I don't
understand why it won't work. Anyway I can bring out still can't solve the
problem. Thanks
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/scalanlp/breeze/issues/570, or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAlocY5yrwTp3ewTjZWJpndftvbMjgGks5qaKdlgaJpZM4JXLxG
.

Thanks @dlwh   I use IntelliJ IDEA with  the windows environment ,

`def loadMSIData(sc:SparkContext,inpath:String,nparts:Int)={
val Matrix=breeze.linalg.csvread(new File(inpath))
Matrix
}
val data = loadMSIData(sc, inpath, nparts = block_size) // load 3x3 Matrix
val n = data.rows
val num_iter = ceil(n / block_size)
val A =BDM(n,n)
val dataT=data.t  //transpose data
val a= BDV(sum(data:*data,Axis._1).toArray) //sum all rows elements
var aa=a * BDV.fill(3){1.0}.t   // column vector * a row vector with full 1
val block=dataT(::,0 until  3)  // column slicing dataT
aa=aa(::,0 until 3 )   // same
val b=BDV(sum(block:*block,Axis._0).toArray)
val bb=(b BDV.fill(3){1.0}.t).t
val ab = data * block   //get error, the data and block have same pattern
val dist=aa+bb-2ab    // won't work`
this is my code bolck. Thanks for you patience!

This compiles fine for me in actual scala. You can't trust intellij. it gets it wrong a lot. (Just run build). I did have to change 2 * ab to 2.0 * ab because Breeze can't do int to double promotion
def foo = {
val block_size = 5

val data = DenseMatrix.rand(10, 15)
val n = data.rows
val num_iter = ceil(n / block_size)

val A = DenseMatrix.zeros[Double](n,n)
val dataT=data.t  //transpose data
val a= DenseVector(sum(data:*data,Axis._1).toArray) //sum all rows elements
var aa=a * DenseVector.fill(3){1.0}.t   // column vector * a row vector with full 1

  val block=dataT(::,0 until  3)  // column slicing dataT
    aa=aa(::,0 until 3 )   // same
  val b = DenseVector(sum(block:*block,Axis._0).t.toArray)
  val bb=(b * DenseVector.fill(3){1.0}.t).t
val ab = data * block
val dist=aa+bb- 2.0 * ab    // won't work
}

@dlwh    Thanks ,  I will try again .  OK  please let me close the Q


Inconsistency in find functionality

For instance, find e/joh will find the person but find n/Bern will not find the person

Already stated in User Guide that name matching only matches WHOLE key words.


./build/bin/asr/fl_asr_tutorial_inference_ctc: not found[Your bug title]

After successfull installation of flashlight I can't find fl_asr_tutorial_inference_ctc

Can you post what do you have inside build/bin/asr?

@Shridharpawar77 any update?

Seems you have the binary, looking at another issue from you https://github.com/facebookresearch/flashlight/issues/467. So closing this one. Feel free to reopen if it is needed.


Official RPMs at http://xrootd.web.cern.ch/xrootd ?

Dear XRootD-SciTokens maintainers,
I wonder if it would be possible to get "official" RPMs also together with the vanilla XRootD RPMs at:
http://xrootd.web.cern.ch/xrootd
We'd love to enable SciToken (and other token) support on our instance and are currently using the "vanilla" XRootD packages, while readily built RPMs of xrootd-scitokens seem to be available only in OSG repositories.
Since scitokens-cpp is available at least in EPEL 7 and EPEL 8, I believe all dependencies can be covered by EPEL.

If @djw8605 is OK with that, I can add xrootd-scitokens as a submodule to xrootd builds.

I am very happy to have xrootd-scitokens as a submodule to xrootd.

@djw8605 : could you have a look at #2 (I think it's not very controversial ;-), it will make it possible to build xrootd-scitokens as a submodule of core xrootd.

@djw8605 : is there a reason why libXrdAccSciTokens is being installed in LIB_INSTALL_DIR and not in CMAKE_INSTALL_LIBDIR?
https://github.com/xrootd/xrootd-scitokens/blob/67d69c54ec7b587e544a8d1026db378950e9f8c9/CMakeLists.txt#L41-L43

No reason I can think of.  why that directory was chosen, I'm not sure.  But I'm open to change it.

Ok, pull request created, waiting on travis-ci tests: https://github.com/scitokens/xrootd-scitokens/pull/34
(I opened it in the scitokens org because it already has the travis tests setup)

@simonmichal ok, updated to use CMAKE_INSTALL_LIBDIR

@djw8605 : thanks for updating the CMake file!
I integrated xrootd-scitokens as a submodule in xrootd core and added it into our CI builds :-)
It turns out there's one last missing thing, we are building XRootD for latest Fedora platforms and with -Wall -Wextra options which makes the compiler very picky ;-)
The CI builds are failing with following error:
/xrootd/src/XrdSciTokens/XrdSciTokens/vendor/inih/INIReader.h:163:12: error: 'char* strncpy(char*, const char*, size_t)' specified bound 50 equals destination size [-Werror=stringop-truncation]
     strncpy(dest, src, size);

I created a PR that fixes this problem: #3 for your consideration ;-)

I suppose with #3 merged we can now close this?

Agreed.


ImportError: No module named req

After entering this >> pi@raspberrypi:~ $ /home/pi/jasper/jasper.py
I got this errors:
Traceback (most recent call last):
File "/home/pi/jasper/jasper.py", line 13, in
from client import stt
File "/home/pi/jasper/client/stt.py", line 16, in
import diagnose
File "/home/pi/jasper/client/diagnose.py", line 9, in
import pip.req
ImportError: No module named req
By reading solutions to similar error, i have enter this code to change the pip version:
sudo python -m pip install --upgrade pip==9.0.3
Then this error come:

        JASPER - THE TALKING COMPUTER           *

(c) 2015 Shubhro Saha, Charlie Marsh & Jan Holthuis *

ERROR:client.g2p:Command 'phonetisaurus-g2p --model=/home/pi/phonetisaurus/g014b2b.fst --input=/tmp/tmpakf5pP.g2p --words --isfile' return with exit status -11
ERROR:client.vocabcompiler:Fatal compilation Error occured, cleaning up...
Traceback (most recent call last):
File "/home/pi/jasper/client/vocabcompiler.py", line 163, in compile
self._compile_vocabulary(phrases)
File "/home/pi/jasper/client/vocabcompiler.py", line 271, in _compile_vocabulary
self._compile_dictionary(vocabulary, self.dictionary_file)
File "/home/pi/jasper/client/vocabcompiler.py", line 321, in _compile_dictionary
phonemes = g2pconverter.translate(words)
File "/home/pi/jasper/client/g2p.py", line 130, in translate
output = self._translate_words(words)
File "/home/pi/jasper/client/g2p.py", line 119, in _translate_words
nbest=self.nbest)
File "/home/pi/jasper/client/g2p.py", line 56, in execute
raise OSError("Command execution failed")
OSError: Command execution failed
ERROR:root:Error occured!
Traceback (most recent call last):
File "/home/pi/jasper/jasper.py", line 146, in
app = Jasper()
File "/home/pi/jasper/jasper.py", line 109, in init
stt_passive_engine_class.get_passive_instance(),
File "/home/pi/jasper/client/stt.py", line 48, in get_passive_instance
return cls.get_instance('keyword', phrases)
File "/home/pi/jasper/client/stt.py", line 40, in get_instance
vocabulary.compile(phrases)
File "/home/pi/jasper/client/vocabcompiler.py", line 171, in compile
raise e
OSError: Command execution failed
Can anyone help me? im really bad at this :(

Check the path etc are correct.

Thank you, sir.


Does not work in buffers that are not associated with a file name

Got to a scratch buffer.
The locate-dominating-file function will throw the following error:
locate-dominating-file: Wrong type argument: stringp, nil

(defun lsp ...) gates everything with (when buffer-file-name ...), never mind


Episode 1: derived datatypes

Data representation in MPI with typemaps.
Type constructors and life cycle of user-defined types.
User-defined packing and unpacking.
Exercise: ?

@wikfeldt @mabraham Suggestions for exercises in this episode?

In GROMACS we frequently pass around XYZ triples of either float or double. One could express that as an array of structs, and now a derived datatype is nice for MPI on it.
One could also express it as an array of the underlying type that is manually managed to be 3 times as large. That makes it clean to use MPI with MPI_FLOAT/MPI_DOUBLE and that same size. This runs faster because it is a built-in datatype. So there's useful tradeoffs to discuss with the students.
One could also have a struct with three separate arrays for X, Y, and Z and now you can make a different derived datatype for that.

The graphic for MPI_Pack is much improved. I further suggest that the *position indicators on it are changed to be outbuf+*position so it is more consistent with the words. (Position isn't a pointer, it's an offset from the outbuf pointer`)

Likewise for the MPI_Unpack graphic


[WEB] exceptions thrown in async functions are swallowed and no debug output is made

Steps to Reproduce

create a new flutter app
modify the _incrementCounter method like this

  Future _incrementCounter() async {
    throw Exception('This should be seen');
    setState(() {

flutter run  -d chrome -v
click on the FAB

No message is shown on the console. If you remove the async the the exceptions is reported as expected
Logs

[√] Flutter (Channel master, v1.10.7-pre.95, on Microsoft Windows [Version 10.0.18362.295], locale de-DE)
    • Flutter version 1.10.7-pre.95 at C:\Entwicklung\flutter
    • Framework revision 11d0235121 (11 hours ago), 2019-09-30 14:15:17 -0700
    • Engine revision 463762b817
    • Dart version 2.6.0 (build 2.6.0-dev.4.0 623fd5c8cd)

    • Dart plugin version 191.8423
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b03)

[√] IntelliJ IDEA Community Edition (version 2018.2)
    • IntelliJ at C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2018.2.5
    • Flutter plugin version 29.1.3
    • Dart plugin version 182.4892.25

[√] VS Code, 64-bit edition (version 1.38.1)
    • VS Code at C:\Program Files\Microsoft VS Code
    • Flutter extension version 3.4.1

[√] Connected device (2 available)
    • Chrome          • chrome          • web-javascript • Google Chrome 77.0.3865.90
    • Headless Server • headless-server • web-javascript • Flutter Tools

• No issues found!

/cc yjbanov : possible fixed zone issue?

HI @escamoteur
testing your code with the latest master

logs
[ +282 ms] Launching lib/main.dart on Chrome in debug mode...
[  +88 ms] Updating assets
[ +174 ms] Syncing files to device Chrome...
[  +66 ms] Generating /Users/nevercode/Desktop/projects/master/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java
[  +52 ms] <- reset
[  +14 ms] /Users/nevercode/development/flutter_master/bin/cache/dart-sdk/bin/dart --disable-dart-dev
/Users/nevercode/development/flutter_master/bin/cache/artifacts/engine/darwin-x64/frontend_server.dart.snapshot --sdk-root
/Users/nevercode/development/flutter_master/bin/cache/flutter_web_sdk/ --incremental --target=dartdevc --debugger-module-names -Ddart.developer.causal_async_stacks=true
--output-dill /var/folders/c3/l5jpznsj5k37yrj47l__xpw40000gn/T/flutter_tools.nwOOBi/flutter_tool.E2VkXD/app.dill --libraries-spec
file:///Users/nevercode/development/flutter_master/bin/cache/flutter_web_sdk/libraries.json --packages .packages -Ddart.vm.profile=false -Ddart.vm.product=false
--bytecode-options=source-positions,local-var-info,debugger-stops,instance-field-initializers,keep-unreachable-code,avoid-closure-call-instructions --enable-asserts
--track-widget-creation --filesystem-root /var/folders/c3/l5jpznsj5k37yrj47l__xpw40000gn/T/flutter_tools.nwOOBi/flutter_tools.DoBO27 --filesystem-scheme org-dartlang-app
--initialize-from-dill build/cache.dill.track.dill --platform file:///Users/nevercode/development/flutter_master/bin/cache/flutter_web_sdk/kernel/flutter_ddc_sdk.dill
[  +17 ms] <- compile org-dartlang-app:/web_entrypoint.dart
[+17529 ms] Syncing files to device Chrome... (completed in 17,667ms, longer than expected)
[   +1 ms] Synced 21.9MB.
[        ] <- accept
[        ] Caching compiled dill
[ +787 ms] [CHROME]:
[   +2 ms] [CHROME]:DevTools listening on ws://<IP_ADDRESS>:54214/devtools/browser/765bc7ea-906e-4fd1-bae0-ea08d8f215ea
[+5216 ms] Debug service listening on ws://<IP_ADDRESS>:54238/Y4xgCijuHiw=

[ +274 ms] Debug service listening on ws://<IP_ADDRESS>:54238/Y4xgCijuHiw=
[   +2 ms] Warning: Flutter's support for web development is not stable yet and hasn't
[        ] been thoroughly tested in production environments.
[        ] For more information see https://flutter.dev/web
[        ] 🔥  To hot restart changes while running, press "r" or "R".
[   +1 ms] For a more detailed help message, press "h". To quit, press "q".
[+4119 ms] ══╡ EXCEPTION CAUGHT BY GESTURE ╞═══════════════════════════════════════════════════════════════════

[   +1 ms] The following _Exception was thrown while handling a gesture:

[   +6 ms] Exception: This should be seen

[        ] When the exception was thrown, this was the stack:

[        ] dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 214:49  throw_

[        ] packages/master/main.dart 58:5                                                [_incrementCounter]

[   +2 ms] packages/flutter/src/material/ink_well.dart 779:19                            [_handleTap]

[        ] packages/flutter/src/material/ink_well.dart 862:36                            <fn>

[        ] packages/flutter/src/gestures/recognizer.dart 182:24                          invokeCallback

[   +1 ms] packages/flutter/src/gestures/tap.dart 504:47                                 handleTapUp

[        ] packages/flutter/src/gestures/tap.dart 282:5                                  [_checkUp]

[        ] packages/flutter/src/gestures/tap.dart 254:7                                  acceptGesture

[        ] packages/flutter/src/gestures/arena.dart 156:12                               sweep

[        ] packages/flutter/src/gestures/binding.dart 222:20                             handleEvent

[        ] packages/flutter/src/gestures/binding.dart 198:14                             dispatchEvent

[   +1 ms] packages/flutter/src/gestures/binding.dart 156:7                              [_handlePointerEvent]

[        ] packages/flutter/src/gestures/binding.dart 102:7                              [_flushPointerEventQueue]

[   +1 ms] packages/flutter/src/gestures/binding.dart 86:32                              [_handlePointerDataPacket]

[   +2 ms] lib/_engine/engine/window.dart 758:13                                         _invoke1

[   +1 ms] lib/_engine/engine/window.dart 372:5                                          invokeOnPointerDataPacket

[        ] lib/_engine/engine/pointer_binding.dart 129:14                                [_onPointerData]

[        ] lib/_engine/engine/pointer_binding.dart 479:16                                <fn>

[        ] lib/_engine/engine/pointer_binding.dart 440:21                                <fn>

[        ] lib/_engine/engine/pointer_binding.dart 210:16                                <fn>

[        ] Handler: "onTap"

[        ] Recognizer:

[  +12 ms]   TapGestureRecognizer#1f4c5

[        ] ════════════════════

doctor
[✓] Flutter (Channel master, 1.20.0-3.0.pre.126, on Mac OS X 10.15.5 19F101, locale en-GB)
    • Flutter version 1.20.0-3.0.pre.126 at /Users/nevercode/development/flutter_master
    • Framework revision 462b0ea76e (18 hours ago), 2020-07-02 16:13:02 -0400
    • Engine revision 51ca1432b3
    • Dart version 2.9.0 (build 2.9.0-20.0.dev 8afe9875a6)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
    • Android SDK at /Users/nevercode/Library/Android/sdk
    • Platform android-29, build-tools 29.0.2
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

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

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 46.0.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] VS Code
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.12.1

[✓] Connected device (3 available)
    • macOS (desktop)  • macos      • darwin-x64     • Mac OS X 10.15.5 19F101
    • Web Server (web) • web-server • web-javascript • Flutter Tools
    • Chrome (web)     • chrome     • web-javascript • Google Chrome 83.0.4103.116

• No issues found!

the issue doesn't seem to occur.
Closing the issue as solved
If you disagree, please write in the comments and I will reopen it.
Thank you


Fix storage price

following https://github.com/neo-project/neo/pull/2692

Codecov Report

Merging #152 (786599a) into development (444209b) will decrease coverage by 0.05%.
The diff coverage is 50.00%.

@@               Coverage Diff               @@
##           development     #152      +/-   ##
===============================================
- Coverage        82.84%   82.79%   -0.06%
===============================================
  Files               89       89
  Lines             8827     8827
===============================================
- Hits              7313     7308       -5
- Misses            1514     1519       +5

Impacted Files
Coverage Δ

neo3/contracts/native/management.py
37.00% <0.00%> (ø)

neo3/contracts/native/nativecontract.py
94.66% <ø> (ø)

neo3/contracts/applicationengine.py
66.00% <50.00%> (ø)

neo3/contracts/interop/storage.py
89.04% <100.00%> (ø)

neo3/contracts/native/policy.py
74.46% <0.00%> (-5.32%)
:arrow_down:

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 444209b...786599a. Read the comment docs.


[Suggestion]  let verified sick load his locations

This will help in case of large jump in the sicks at once (hopefully not) and the epidemiological investigation.
Enable load of the user history location after he/she verified as a (covid-19) sick/carrier.
Use token/password and the ID of local state (e.g Israel) to update only real sicks.
(new api endpoint)

We appreciate your involvement!
The motivation for the idea you raised is clear.
We are looking now into solutions that will enable voluntary uploading of the location history of confirmed patients, while adhering to the privacy and security guidelines that we followed in the design of the application.

A suggestion was made to enable uploading to separate sources, for example, the epidemiologic team.
To maintain privacy, this should be done via API in the application but a separate upload function to external sources such as email or similar. In addition, strong encryption must be used.

Also see #213 which might be relevant for this suggestion.


ci: enable linting, formatting, deps, devcontainer

Configure Super-linter CI jobs
Add a script to run linting and fixing locally
Configure a devcontainer using Super-linter as a base

TODOs (we need to align):

Which linters we need to enable or disable. Currently, every linter that super-linter ships is enabled.
How to configure enabled linters. Currently, we're using default configs, but we have configurations that match Google Style Guides for several languages already, if we want to use them.
Renovate bot is configured to propose dependency updates PR only if requested (tick a box in the Dependency Dashboard)
Renovate bot is configured to propose a PR for each update. We might want to group these updates to reduce the noise, especially if CI jobs are slow/time consuming.
Fix linting and formatting issues
Evaluate pre-commit configuration

A few linters I decided to disable (at least for now):

PYLINT has a major backlog of things to fix, I want to get to this eventually but will defer that to another PR since I'm about maxed out on manually fixing lint issues right now 🤣

/shrug :)

PYINK has contradictory expectations to PYTHON_BLACK and PYTHON_RUFF about how it handles line breaks. Took a lot of confused troubleshooting to figure out why one run in FIX mode worked and then the subsequent run in VALIDATE mode immediately failed. Easiest fix I could find was to remove PYINK.

Correct, because Pyink is basically Google's fork of Black + some additional configurability to meet the Google Python Style Guide. Ok, to disable.

JSCPD: requires a lot of refactoring docs that I don't want to get into on this PR. (we're deliberately re-using boilerplate text across docs)

Makes sense

EDITORCONFIG also seemed to get some contradictory linting standards, I decided not to troubleshoot this one further if all the other language specific lines are passing.

I can help you here if you want to keep this enabled. It has a few useful checks (line endings, trailing whitespaces...).

I'm not clear on the difference of the lint / pre-commit and lint / lint jobs. Both seem to get to the same outcome (run all the super linter checks with the configs I made in super-linter.env), but the pre-commit job is failing with an error like "The origin/main branch doesn't exist in /tmp/lint". I could probably fix that by tweaking the branch it tries to run on, but I'm not clear on why I would want both of these jobs.

I think there's a copy-paste error.

Rename scripts/run-pre-commit.sh to scripts/lint.sh
Remove lint / pre-commit
Restore the .github/workflows/pre-commit.yml file. We can check pre-commit configuration in another, separate PR.

For the choice of auto-fixing in the PR, I'm leaning towards just validating it in GHA (no fix mode) and adding to our CONTRIBUTING guide how to use the fix mode and devcontainer locally. I don't have a strong reason, but I'm leaning towards this just because it's more familiar to other large projects I've worked on. I'm also imagining a scenario that leads to merge conflicts if I create a PR that is autofixed in GHA, then I go back and make one more commit from my local repo without pulling first... would that lead to merge conflicts? Or is this a non-issue

SGTM

Re: EDITORCONFIG, I took another look at it and realized it was a misunderstanding on my end, so I've done another commit to resolve that.
I'll make the adjustments you recommended with the scripts and files. We previously had a different file also called pre-commit.yml that wasn't doing much, I must have gotten overly excited and removed the file from your contributions.

I didn't provide pre-commit stuff, it was there already 😀

Just two minor things to check, and we'll be good to go :)


[fix] Cannot read property 'contains' of undefined DateFilterControl.jsx

@betodealmeida

Codecov Report

Merging #5407 into master will not change coverage.
The diff coverage is 0%.

@@           Coverage Diff           @@
##           master    #5407   +/-   ##
=======================================
  Coverage   61.21%   61.21%
=======================================
  Files         373      373
  Lines       23709    23709
  Branches     2750     2750
=======================================
  Hits        14513    14513
  Misses       9181     9181
  Partials       15       15

Impacted Files
Coverage Δ

.../explore/components/controls/DateFilterControl.jsx
60.55% <0%> (ø)
:arrow_up:

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 7b4e6c7...5cc1e65. Read the comment docs.


[BUG] hot reload not working when using fvm

Describe the bug
When I use fvm from the terminal, I am unable to hot reload or hot restart.
To Reproduce
Steps to reproduce the behavior:

Run fvm from the terminal like: fvm flutter run --flavor development -d 9288B215-C389-4B17-B00A-8C9303B53F4D
Press r to hot reload
The letter r shows up in the terminal

Expected behavior
Pressing r should do a hot reload
Desktop (please complete the following information):

OS: macOS 10.15.4
FVM Version 1.2.3

fvm flutter doctor -v
fvm flutter doctor -v
[✓] Flutter (Channel unknown, 1.21.0-9.2.pre, on Mac OS X 10.15.4 19E287, locale en-US)
    • Flutter version 1.21.0-9.2.pre at /Users/KG/fvm/versions/1.21.0-9.2.pre
    • Framework revision 81a45ec2e5 (3 days ago), 2020-08-27 14:14:33 -0700
    • Engine revision 20a9531835
    • Dart version 2.10.0 (build 2.10.0-7.3.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/KG/Library/Android/sdk
    • Platform android-29, build-tools 28.0.3
    • ANDROID_HOME = /Users/KG/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

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

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 47.1.2
    • Dart plugin version 193.7361
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] IntelliJ IDEA Community Edition (version 2018.2.5)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 31.3.3
    • Dart plugin version 182.5215

@KevinTheGray Once you you type R you can press enter to send the command. Will take a look how to improve this

I see, that works!  This solution works for me so I'll close this issue out.  Thanks.

I also noticed that when running from the command line. It's not a big issue, but it would be amazing to have some solution. @leoafarias do you have some ideas how to handle this? Maybe the fvm should enter the some kind of "interactive" mode when detecting run?

Version 1.3.0-dev-0 has these tweaks
pub global activate fvm 1.3.0-dev.0 version still WIP


Pods get stuck in ContainerCreating if netkit mode is enabled

If you deploy Cilium with bpf.datapathMode: netkit on a kernel that doesn't support netkit (example, before Linux 6.8), then Cilium will happily start up, report no errors, but then fail to provision the network for Pods.
Expected behaviour: Cilium probes for support on startup and crashes out with a friendly message telling the user that netkit is not supported on their kernel.

cc @borkmann

Makes sense, I'll work on it. We probably need to extend probes first in cilium/ebpf lib.

IIRC, we already have an internal netkit probe in cilium/ebpf for the AttachNetkit API. Maybe we can just use AttachNetkit for a probe in cilium, or export the c/ebpf internal feature probe.


MTV-1220 | Add lock to the inventory handler

Ref:
https://issues.redhat.com/browse/MTV-1220
Issue:
When having lot of VMs in the inventory the controller can fail with:
panic: concurrent write to websocket connection
        panic: concurrent write to websocket connection
goroutine 4943150 [running]:
github.com/gorilla/websocket.(*messageWriter).flushFrame(0xc004688300, 0x1, {0x0?, 0x29b1560?, 0xc00824b808?})
        /remote-source/app/vendor/github.com/gorilla/websocket/conn.go:632 +0x4b8
github.com/gorilla/websocket.(*messageWriter).Close(0x30?)
        /remote-source/app/vendor/github.com/gorilla/websocket/conn.go:746 +0x35
github.com/gorilla/websocket.(*Conn).beginMessage(0xc00aa1fce0, 0xc0044ec870, 0x1)
        /remote-source/app/vendor/github.com/gorilla/websocket/conn.go:493 +0x47

This is caused by the concurrent write to websocket connection this fix adds a lock so the goroutines wait before sending the response.

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 15.66%. Comparing base (5cb5362) to head (a47c5d8).
Report is 5 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1146   +/-   ##
=======================================
  Coverage   15.66%   15.66%
=======================================
  Files         112      112
  Lines       23052    23052
=======================================
  Hits         3612     3612
  Misses      19155    19155
  Partials      285      285

Flag
Coverage Δ

unittests
15.66% <ø> (ø)

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

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


Camera auto switch from Facing front to back after onPause

First, i switch camera from Facing Back to Front.
After fragment/activity fall on onPause and onResume state, camera auto switch Facing Back without holding the state before.
Is this a bug ?

No, this isn't a bug.
When you go to onPause, preview is stopped producing a camera release and the state is reset too.
If you want use same face you should save it in a variable and use it when you call startPreview.
For example:
  private CameraHelper.Facing facing = CameraHelper.Facing.BACK;

private void switchCamera() {
    try {
      rtmpCamera1.switchCamera();
      facing = rtmpCamera1.isFrontCamera() ? CameraHelper.Facing.FRONT : CameraHelper.Facing.BACK;
    } catch (CameraOpenException e) {
      Toast.makeText(this, e.getMessage(), Toast.LENGTH_SHORT).show();
    }
  }

@Override
  public void surfaceChanged(SurfaceHolder surfaceHolder, int i, int i1, int i2) {
    rtmpCamera1.startPreview(facing);
  }

It's works well.
Thank you so much :100:


Fix order of menu items in FAQ/Errors

The overview should be the top item, and it should be opened when the submenu is opened.

Overview pages no longer work like this...
When you want an overview page section, the page is added to a folder lvl up, and it's automatically assigned as the overview page


Typescript 2.1

Is there a channel for reporting support of new versions of typescript on the Azure App Service? Was contemplating using Typescript 2.1 but after checking the typescript folder using the kudu console i could see that the latest version is 2.0
https://blogs.msdn.microsoft.com/typescript/2016/12/07/announcing-typescript-2-1

looks like 2.1 was installed on azure apps yesterday, i can now see the following folder
D:\Program Files (x86)\Microsoft SDKs\TypeScript\2.1 using Kudu console.

yes we pushed typescript 2.1 on Jan 25

Is there anywhere public we should be looking for these details. Anyone using typescript in their projects and Azure deployment slots, won't know when/if they should be using the latest typescript features as its not obvious unless you check using the kudu console? The blogpost above certainly implies its ready to go, would be good it it could say check "here" for azure support, on the blogpost.


Move Styles to Component from Global in Tutorial

What kind of changes does this PR include?

New or updated content

Description

Closes #2929
What does this PR change? In the tutorial, I moved component styles from a global file to the specific component. I did not change the styles at all, I could remove the class names to illustrate Astro's scoping, but imo it's still best practice to use class names and the like.
Did you change something visual? A before/after screenshot can be helpful.

Hi Jothsa! Thanks for going ahead and grabbing an issue, but reminder that just because someone files an issue doesn't mean that we've decided it needs changing in docs. (You can also tell because not every item has a "help wanted" tag, which means we haven't decided that we're ready for someone to fix it yet.)
I'm not saying that this one is a bad idea, just that it was not on our priority list to discuss yet. And, it's a particularly busy time right now, which is why we hadn't yet discussed in the issue how best to proceed with it.
I won't close this PR right now, instead I'll see how the next two weeks shake out and whether we can get to this.
But since it's not something we were looking to do, and since any changes to the tutorial code require a significant effort to change the corresponding code project repo, in multple branches with proper rebasing, we are limited in when we have the resources to change the tutorial. When code is working, it's not as high on the priority chain.
I just wanted to let you know what's happening, and maybe help guide you towards issues that are easier for us to review, and fix more urgent problems. We love how involved you've been getting in the docs PRs and we feel bad when we can't keep up with you!  :sweat_smile: :raised_hands:

Hey @Jothsa !
Just wanted to let you know that we've had some discussion around the tutorial code, and we've actually decided to do a larger audit of the Hamburger component and mobile nav so we can tackle some issues (like this one! based on feedback like yours!) all at once.
In the next few weeks @ElianCodes will be taking ownership of the issue described here, which will eventually then include documenting whatever changes we decide to make. If you'd like to get involved there, and then contribute to the resulting documentation, we'd be happy to have you! https://github.com/withastro/blog-tutorial-demo/issues/11
So, I'm going to close this PR for now, since while it seems like just a tiny text change, we can't change the code snippets without also diving in and changing all the branches of the tutorial demo code, too, and that's a bit more work. Given that we're going to treat this as a larger, more comprehensive task, we're moving the work over there first.
Thanks again for your patience and understanding, and hope to see you involved in more docs/tutorial PRs!

No prob! I've been swamped with school lately, but hopefully I'll be able to contribute once my schedule stabilizes later this year. Sorry I just disappeared w/o saying anything 😅


Reformatted for easier reading, updating link, better notes

Hi Joseph,
Thanks for your contribution.  Unfortunately this file is a vendored copy of SVG-edit, so your changes would need to be submitted to that upstream instead—after which we might, eventually, update this copy.
Christopher

Thank you for the feedback.


[SPARK-38032][INFRA] Upgrade Arrow version < 7.0.0 for Python UDF tests in SQL and documentation generation

What changes were proposed in this pull request?
This PR proposes to use Arrow < 7.0.0 (6.0.1 latest) for IntegratedUDFTestUtils, e.g., https://github.com/apache/spark/tree/master/sql/core/src/test/resources/sql-tests/inputs/udf for pandas UDFs.
Note that this PR does not change the PyArrow and pandas used for PySpark test base because they are installed in the base image (https://github.com/apache/spark/blob/master/.github/workflows/build_and_test.yml#L290), and they are already using almost latest version (PyArrow 6.0.0, and pandas 1.3.3) so I think it's fine.
Why are the changes needed?
It's better to test latest versions as they are likely more used by end users.
Does this PR introduce any user-facing change?
No, dev-only.
How was this patch tested?
Existing test cases should cover.

cc @dongjoon-hyun and @zero323 fyi

Merged to master.

Awesome! Thanks for working on this!


Update documentation regarding Deuterium labeling - use convention where the position number indicates carbon

FEATURE REQUEST
Inspiration

Recording the labeled positions for Deuterium labled compounds can be ambiguous. Update the documentation to clarify that TraceBase uses the convention where the position number indicates carbon.
Description

Make it clear to the researcher how to indicate the position of labeled deuterium and how to interpret the labeled positions for existing records.
Alternatives

None
Dependencies
This issue cannot be started until the completion of the following issue(s)/
pull request(s):

#issue_number_1
#pull_request_1

Comment

None

ISSUE OWNER SECTION
Assumptions

List of assumptions that the code will not explicitly address/check
E.g. We will assume input is correct (explaining why there is no validation)

Limitations

A list of things this work will specifically not do
E.g. This feature will only handle the most frequent use case X

Affected Components

change: File path or DB table ...
add: Environment variable or server setting
delete: External executable or cron job

Requirements

[ ] 1. List of numbered conditions to be met for the feature
[ ] 2. E.g. Every column/row must display a value, i.e. cannot be empty
[ ] 3. Numbers for reference & checkboxes for progress tracking

DESIGN
Interface Change description

None provided
Code Change Description

None provided
Tests

[ ] 1. A description of at least one test for each requirement above.
[ ] 2. E.g. Test for req 2 that there's an exception when display value is ''
[ ] 3. Numbers for reference & checkboxes for progress tracking

To make sure I'm clear, position is only recorded in tracers, correct?  And it is not reported anywhere else?

... or -OH


Bundle.entry[0].resource.addresses[0]: Unrecognised property '@display'  is shown, need help on this to rectify

I am seeing the below issue for CarePlan Resource when we try to validate from FHIR validator
Fhir validator tool used: http://inferno.healthit.gov/validator
Version : 1.0.0
Implementation Guide selected from drop down = hl7.fhir.us.core
Profile selected from drop down = http://hl7.org/fhir/us/core/StructureDefinition/us-core-careplan
Validation Error message:
Bundle.entry[0].resource.addresses[0]: Unrecognised property '@display' on line 102. Jump to error.
Bundle.entry[0].resource.addresses[0].reference: This property must be an Object, not a primitive property on line 104. Jump to error.
Below is the payload or json response snippet for address data element:
"addresses": [
{
"display": "Member may not be receiving appropriate diagnostic testing/monitoring as it relates to gestational diabetes requiring additional care coordination/education",
"reference": "Condition/3008838388"
}
]
Thanks

I tested with this US Core example resource with addresses attribute provided. There is no error reported. Would you mind providing more details?
{
  "resourceType": "CarePlan",
  "id": "colonoscopy",
  "meta": {
    "profile": [
      "http://hl7.org/fhir/us/core/StructureDefinition/us-core-careplan"
    ]
  },
  "text": {
    "status": "additional",
    "div": "
\n\t\t\tAssessment\n\t\t\t
\n\t\t\t\t
Recurrent GI bleed of unknown etiology; hypotension perhaps secondary to this but as likely secondary to polypharmacy.
\n\t\t\t\t
Acute on chronic anemia secondary to #1.
\n\t\t\t\t
Azotemia, acute renal failure with volume loss secondary to #1.
\n\t\t\t\t
Hyperkalemia secondary to #3 and on ACE and K+ supplement.
\n\t\t\t\t
Other chronic diagnoses as noted above, currently stable.
\n\t\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\tPlanned Activity	\n\t\t\t\t\t\tPlanned Date	\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n\t\t\t\t\t\tColonoscopy	\n\t\t\t\t\t\tApril 21, 2000	\n\t\t\t\t\t
\n\t\t\t\t
\n\t\t\t
\n\t\t
"
  },
  "status": "active",
  "intent": "order",
  "category": [
    {
      "coding": [
        {
          "system": "http://hl7.org/fhir/us/core/CodeSystem/careplan-category",
          "code": "assess-plan"
        }
      ]
    }
  ],
  "subject": {
    "reference": "Patient/example",
    "display": "Amy Shaw"
  },
  "addresses": [
    {
      "display": "Member may not be receiving appropriate diagnostic testing/monitoring as it relates to gestational diabetes requiring additional care coordination/education",
      "reference": "Condition/3008838388"
    }
  ]
}

Thanks for the quick response, I am using the drop down options for the below:
Implementation Guide selected from drop down = hl7.fhir.us.core
Profile selected from drop down = http://hl7.org/fhir/us/core/StructureDefinition/us-core-careplan
In this case, I am seeing the error message as mentioned above.
I would like to know, are you also trying with the same way?
Meanwhile, I am attaching the full payload, which may help you in replicating the issue.
{
"entry": [
{
"fullUrl": "https://testserverexample/t/dummytest/fhir/r4/CarePlan/3008838388",
"resource": {
"id": "3008838388",
"language": "en",
"meta": {
"profile": [
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-careplan"
],
"versionId": "1.0"
},
"text": {
"div": "
ProblemMember may not be receiving appropriate diagnostic testing/monitoring as it relates to gestational diabetes requiring additional care coordination/education",
"status": "generated"
},
"activity": [
{
"id": "1",
"detail": {
"description": "Intervention one",
"goal": [
{
"display": "Test Display",
"reference": "Goal/30169909009"
}
],
"scheduledPeriod": {
"start": "2000-03-25"
},
"status": "in-progress"
}
},
{
"id": "2",
"detail": {
"description": "Intervention two",
"goal": [
{
"display": "Test Display",
"reference": "Goal/30169909009"
}
],
"scheduledPeriod": {
"start": "2000-03-25"
},
"status": "in-progress"
}
},
{
"id": "3",
"detail": {
"description": "Intervention three",
"goal": [
{
"display": "Test Display",
"reference": "Goal/30169909009"
}
],
"scheduledPeriod": {
"start": "2000-03-25"
},
"status": "in-progress"
}
},
{
"id": "4",
"detail": {
"description": "Intervention Four",
"goal": [
{
"display": "Test Display",
"reference": "Goal/30169909009"
}
],
"scheduledPeriod": {
"start": "2000-03-25"
},
"status": "in-progress"
}
},
{
"id": "5",
"detail": {
"description": "Intervention Five",
"goal": [
{
"display": "Test Display",
"reference": "Goal/30169909009"
}
],
"scheduledPeriod": {
"start": "2000-03-25"
},
"status": "in-progress"
}
}
],
"addresses": [
{
"display": "Member may not be receiving appropriate diagnostic testing/monitoring as it relates to gestational diabetes requiring additional care coordination/education",
"reference": "Condition/3008838388"
}
],
"category": [
{
"coding": [
{
"code": "assess-plan",
"system": "http://hl7.org/fhir/us/core/CodeSystem/careplan-category"
}
]
}
],
"goal": [
{
"display": "Test Display",
"reference": "Goal/30169909009"
}
],
"intent": "plan",
"status": "active",
"subject": {
"reference": "Patient/123455666987"
},
"resourceType": "CarePlan"
}
}
],
"link": [
{
"relation": "self",
"url": "https://testserverexample/t/dummytest/fhir/r4/CarePlan?patient=123455666987"
}
],
"total": 1,
"type": "searchset",
"resourceType": "Bundle"
}
Thanks

OK I see. You cannot validate as a Bundle. The underly FHIR validator_cli does accept a Bundle as input but the validation of Bundle.entry.resource is not reliable with current version of validator_cli. If you validate the CarePlan resource alone, you have a pass.

So, in that case few profiles when I copy paste as a bundle, still they are
not showing up this error.
So is there any chance, in future, we can see support for bundle
validations from fhir validator_cli
Also, please clarify me, still my response pasted above is valid fhir
bundle correct?
Thanks
On Fri, 26 Mar 2021, 00:57 yunwwang, @.***> wrote:

OK I see. You cannot validate as a Bundle. The underly FHIR validator_cli
does accept a Bundle as input but the validation of Bundle.entry.resource
is not reliable with current version of validator_cli. If you validate the
CarePlan resource alone, you have a pass.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/inferno-community/fhir-validator-app/issues/47#issuecomment-807331481,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATMVXOGX75NQOFFDCXBZIU3TFOFAPANCNFSM4ZZTDV4A
.

After further investigation, we find this is a bug in our validator app. We will fix that asap. At the same time, you can run validate against individual resource entries.

Thank you!
On Fri, 26 Mar 2021, 21:09 yunwwang, @.***> wrote:

After further investigation, we find this is a bug in our validator app.
We will fix that asap. At the same time, you can run validate against
individual resource entries.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/inferno-community/fhir-validator-app/issues/47#issuecomment-808318510,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ATMVXOEHNLY6GQ4ZCMR5LYLTFSTE3ANCNFSM4ZZTDV4A
.

Hi @yunwwang ,
Now, today, I revalidated my json response with bundle search, I pasted the response in fhir validator, I am not seeing any validation failure issues now, is the issue fixed?
Thanks


Add flag to overload default privileged host device behaviour

This commit adds a flag to the runtime config that allows overloading of the default
privileged behaviour. When the flag is enabled on a runtime, host devices won't
be appended to the runtime spec if the container is run as privileged.
By default the flag is false to maintain the current behaviour of privileged.
Fixes #1213
Signed-off-by: Alex Price<EMAIL_ADDRESS>

/ok-to-test

Update docs/config.md

👍 docs/config.md updated

/lgtm

Proposal for porting over this to Moby/Docker: https://github.com/moby/moby/issues/39697

hi @awprice, this feature sounds great. but how to use this feature. I open privileged_without_host_devices in /etc/containerd/config.toml and set this file as the default config for containerd. then I start a container use docker with --privileged. when I type the command "ls /dev" in container, I saw that the output is the same with host.
I think I may take the wrong step. can someone tell me how to test this feature? @Random-Liu @mikebrow @awprice

@jongwu privileged_without_host_devices will only work when starting containers with the CRI plugin/interface in containerd, which is usually done through Kubernetes or with crictl.
There is a PR to add this functionality to docker, it might be worth trying out: https://github.com/moby/moby/pull/39702

thanks @awprice, I am not familiar with k8s, I think crictl is simple to test this feature, can you give me some info about how to test it using crictl. thanks.

No worries @jongwu. Here is the documentation for crictl - https://github.com/kubernetes-sigs/cri-tools/blob/master/docs/crictl.md

thanks @awprice

hi @awprice, sorry to trouble you again, I have tried for a full day to start a container with --privileged, but failed.
my pod-config is
{
"metadata": {
"name": "true222222222222",
"namespace": "default",
"attempt": 1,
"uid": "hdishd83djaidwnduwk28bcsb"
},
"log_directory": "/tmp",
"linux": {
"securityContext": true
}
}
my container-config.json is
{
"metadata": {
"name": "busybox1111111111111"
},
"image":{
"image": "busybox"
},
"command": [
"top"
],
"log_path":"busybox/0.log",
"linux": {
"SecurityContext": {
"privileged": true
}
}
}
the privileged_without_host_devices is false.
after I start a container, the picture under /dev is totally different with host.
I don't know what's wrong with it. can you help me? thanks!


Check if .name attribute is an identifier

If users specify name and it's not an identifier, it'll break the dot notation.

I think this is OK now? Dot notation is only used explicitly, and key notation can be used otherwise (e.g. sim.diseases['SIR 1']).


SecurityError on Safari

Hello,
I have an application that uses Dexie and it is failing on Safari (the desktop version). I'm pretty sure it worked before but recently found out about it by examining user complaints.
The fiddle from the Dexie homepage https://jsfiddle.net/dfahlander/3tf5r0cu/ also produces error in the Log:
Using Dexie v1.5.1
SeurityError - This browser doesn't like fiddling with indexedDB.
Go run some samples instead at: https://github.com/dfahlander/Dexie.js/wiki/Samples

I also put the example code from the GitHub README (which is mostly the same code) to my CodePen: https://codepen.io/gmorph/pen/gxObEz?editors=1001 and you can (hopefully) see the alert popup says
Error: OpenFailedError: SecurityError IDBFactory.open() called in an invalid security context

It works fine on Chrome, FireFox, MS Edge (in VirtualBox), and Opera instances that I have on my MacBook Pro, but only Safari (Version 10.1.2 (11603.3.8)) is failing on me.
Hopefully it will ring a bell with the core developers :) Thank you.

Hey there, I don't know this error but I can try to reproduce it tomorrow. Have you tested with dexie v2 also? Could it be an issue with codepen and jsfiddle? Maybe those are running the code in an iframe which causes issues?

My apologies. While creating the CodePen example I totally forgot about the original problem. Yes, I think there's a (probably known) problem of running the code with codepen and jsfiddle, I would also appreciate explanation on that problem, but that wasn't really what made me come here. After some fiddling the problem seems to be that I was trying to save an object that is not serializable (with a link to a class instance with functions and possibly some recursive data), and that might have caused the error. Which now leaves me wondering, how does it work on other browsers then?

Could it be that other browsers failed silently? It might also be a browser bug, not the first time browsers implement things differently.

I am not 100% sure, but I've always supposed the problem has been that Safari forbids to access IDB from an iframe.

Thats right, it such a problem that we need to open a separate tab just to support safari. Extremely ugly.

I also have a problem with Safari.
I have a webworker with following code (inside a class):
    this.db = new Dexie('db');
    this.db.version(1).stores({
      events: 'serialNumber',
    });
    this.db.events.toArray();

See video http://take.ms/MRml4 The page is totally broken.
It works if I comment out  this.db.events.toArray();. I can't see any error in the console because the page is reloading.
I am testing ^1.5.1, but I get the same result on v2.
Safari: Version 10.1.2 (12603.3.8)

Here is a quick example where you can reproduce the bug.
index.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <script type="text/javascript">

      var w = new Worker("worker.js");

    </script>
</head>
<body>
aaa
</body>
</html>

worker.js
self.importScripts('https://unpkg.com/dexie@latest/dist/dexie.js');

var db = new Dexie('db');
db.version(1).stores({
  items: 'id',
});
db.items.toArray();

console.log('worker started')

Video: http://take.ms/Qdeyc

@dfahlander
Any chance that you can look at this? Is it a bug in Safari or in dexie.js?

Hi, I've reproduced it and it is an issue when using IDBObjectStore.getAll(). Could be the following Safari bug: https://bugs.webkit.org/show_bug.cgi?id=175609
A workaround is to apply a filter:
db.items.filter(x => true).toArray()
I think we would have to add another special treatment for Safari to work around this internally in Dexie.

This issue is actually 2 separate issues:

Safari doesn't like indexedDB from iframes - not a Dexie issue.
Safari bugs out when calling IDBObjectStore.getAll() from a worker. We've done a workaround for this in 2.0.0 release. This workaround shut down getAll() feature on too many browsers though, so it is being updated to be more fine grained - see discussion on PR #579.

Anyway, both these issues are solved, so I close this.

I believe safari doesn't like indexeddb from an iframe of a third party origin (producing invalid security context errors). Same origin iframes seem to work.

Yeah, I think this is still an issue in Safari if the iFrame is cross-origin. Maybe it's a good security precaution, but makes some of my development difficult/impossible.


python311Packages.model-checker: 0.5.6 -> 0.6.2

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-reviewd workflow started
Status and logs: https://github.com/nixosbrasil/nixpkgs-reviewd/actions/runs/12498825887
Extra args: ``

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 368198

x86_64-linux

:white_check_mark: 4 packages built:

python312Packages.model-checker
python312Packages.model-checker.dist
python313Packages.model-checker
python313Packages.model-checker.dist

nixpkgs-reviewd workflow finished
Status and logs: https://github.com/nixosbrasil/nixpkgs-reviewd/actions/runs/12498825887
nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 368198

x86_64-darwin

:x: 4 packages failed to build:

python312Packages.model-checker
python312Packages.model-checker.dist
python313Packages.model-checker
python313Packages.model-checker.dist

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 368198

x86_64-linux

:white_check_mark: 9 packages built:

codux
nwg-panel
nwg-panel.dist
python312Packages.model-checker
python312Packages.model-checker.dist
python313Packages.model-checker
python313Packages.model-checker.dist
qbittorrent
qbittorrent-nox


Is it possible to open source the RoCEv2 w/ DCQCN implementation?

I saw the tonic paper do describe this implementation.
Thanks!
Yang

Yes! We are restarting the porting from the dev repo to the public repo in a few weeks, and this will be part of that too.

I am looking forward to the disclosure of rate-based implementation. When will it be revealed?

Our previous efforts got delayed but our next goal is for it to be out in the spring. In the meantime, appendix B in the paper has some information about the implementation of the rate limiters and I'll be happy to answer questions about other details.

Our previous efforts got delayed but our next goal is for it to be out in the spring. In the meantime, appendix B in the paper has some information about the implementation of the rate limiters and I'll be happy to answer questions about other details.

Thank you for your kind reply!! :-)

Our previous efforts got delayed but our next goal is for it to be out in the spring. In the meantime, appendix B in the paper has some information about the implementation of the rate limiters and I'll be happy to answer questions about other details.

I read the paper and me too was wondering if you can disclose the ROCEV2 with DCQCN implementation. Any follow-up on this ? thanks


Be able to overwrite http response in IFunctionsWorkerMiddleware

Hello,
In ASP.NET Core I have a middleware that try/catch around the next(context) and depending on the exception, set response body and set status code
try
{
	await _next(context);
}
catch (Exception exception)
{
	var errorResponse = _exceptionHandler.Handle(exception, context.RequestAborted.IsCancellationRequested);
	context.Response.StatusCode = errorResponse.StatusCode;
	context.Response.ContentType = "application/json";
	var jsonErrorResponse = JsonSerialize(errorResponse.Body);
	await context.Response.WriteAsync(jsonErrorResponse);
}

I would like to do the same in azure function in IFunctionsWorkerMiddleware but it's not possible currently, the FunctionContext does not explose anything to do that.

I believe this should be possible, but it may not be straightforward -- we'll investigate this and add a sample if it's possible today. Otherwise, we'll expose this.

I asked a similar question on SO.

https://github.com/Azure/azure-functions-dotnet-worker/issues/340

@brettsam is still tracking this, but we'll need to push this to the next sprint. We'll continue to use this issue for updates.

I believe this should be possible, but it may not be straightforward -- we'll investigate this and add a sample if it's possible today. Otherwise, we'll expose this.

Would really appreciate an update on this issue, thanks!

I believe this should be possible, but it may not be straightforward -- we'll investigate this and add a sample if it's possible today. Otherwise, we'll expose this.

Would really appreciate an update on this issue, thanks!

Same here, I'm waiting after this to improve errors message for our customers, be able to returns 401 / 403 with an error message can do a really big change from a generic 500.

A bit hacky, but I was able to achieve this by setting up a couple extensions methods and a class that inherited from IFunctionsWorkerMiddleware:
/// <summary>
/// Returns the HttpRequestData from the function context if it exists.
/// </summary>
/// <param name="functionContext"></param>
/// <returns>HttpRequestData or null</returns>
public static HttpRequestData GetHttpRequestData(this FunctionContext functionContext, ILogger<ExceptionHandlerMiddleware> logger)
{
	try
	{
		object functionBindingsFeature = functionContext.GetIFunctionBindingsFeature(logger);
		Type type = functionBindingsFeature.GetType();
		var inputData = type?.GetProperties().Single(p => p.Name is "InputData").GetValue(functionBindingsFeature) as IReadOnlyDictionary<string, object>;
		return inputData?.Values.SingleOrDefault(o => o is HttpRequestData) as HttpRequestData;
	}
	catch (Exception ex)
	{
		logger.LogError(
			new EventId((int)LoggingEvents.GetHttpRequestDataFailure),
			ex,
			LoggingConstants.GetHttpRequestDataFailureTemplate
		);
		return null;
	}
}

/// <summary>
/// Sets the FunctionContext IFunctionBindingsFeature InvocationResult with a HttpResponseData.
///
/// We are using this to add exceptions to the Azure Function response...to gently handle exceptions
/// caught by the exception handling middleware and return either a BadRequest 404 or Internal Server
/// Error 500 HTTP Result.
/// </summary>
/// <param name="functionContext"></param>
/// <param name="response"></param>
public static void SetHttpResponseData(this FunctionContext functionContext, HttpResponseData response, ILogger<ExceptionHandlerMiddleware> logger)
{
	try
	{
		object functionBindingsFeature = functionContext.GetIFunctionBindingsFeature(logger);
		Type type = functionBindingsFeature.GetType();
		PropertyInfo pinfo = type?.GetProperties().Single(p => p.Name is "InvocationResult");
		pinfo?.SetValue(functionBindingsFeature, response);
	}
	catch (Exception ex)
	{
		logger.LogError(
			new EventId((int)LoggingEvents.SetHttpResponseDataFailure),
			ex,
			LoggingConstants.SetHttpResponseDataFailureTemplate
		);
	}
}

/// <summary>
/// Retrieves the IFunctionBindingsFeature property from the FunctionContext.
/// </summary>
/// <param name="functionContext"></param>
/// <returns>IFunctionBindingsFeature or null</returns>
private static object GetIFunctionBindingsFeature(this FunctionContext functionContext, ILogger<ExceptionHandlerMiddleware> logger)
{
	try
	{
		KeyValuePair<Type, object> keyValuePair = functionContext.Features.SingleOrDefault(f => f.Key.Name is "IFunctionBindingsFeature");
		return keyValuePair.Value;
	}
	catch (Exception ex)
	{
		logger.LogError(
			new EventId((int)LoggingEvents.GetIFunctionBindingsFeatureFailure),
			ex,
			LoggingConstants.GetIFunctionBindingsFeatureFailureTemplate
		);
		return null;
	}
}

public class ExceptionHandlerMiddleware : IFunctionsWorkerMiddleware
{
	/// <summary>
	/// Gracefully catches, logs, and handles all exceptions from the Azure Functions.
	/// </summary>
	/// <param name="context"></param>
	/// <param name="next"></param>
	/// <returns></returns>
	public async Task Invoke(FunctionContext context, FunctionExecutionDelegate next)
	{
		ILogger<ExceptionHandlerMiddleware> logger = context.GetLogger<ExceptionHandlerMiddleware>();

		try
		{
			await next(context);
		}
		catch (SomeCustomException ex)
		{
			logger.LogError(
				new EventId((int)LoggingEvents.SomeCustomException),
				ex,
				LoggingConstants.SomeCustomException
			);
			await SetResponse(context, logger, HttpStatusCode.BadRequest, ex);
		}
		catch (Exception ex)
		{
			logger.LogError(
				new EventId((int)LoggingEvents.InternalServerError),
				ex,
				LoggingConstants.InternalErrorTemplate,
				ex.Message
			);
			await SetResponse(context, logger, HttpStatusCode.InternalServerError, ex);
		}
	}

	private async Task SetResponse(FunctionContext context, ILogger<ExceptionHandlerMiddleware> logger, HttpStatusCode statusCode, Exception ex)
	{
		HttpRequestData req = context.GetHttpRequestData(logger);
		HttpResponseData response = await req?.ToResponse(statusCode, ex.Message);
		context.SetHttpResponseData(response, logger);
	}
}

Work on this is still in progress. Updating sprint assignment

When your function has multiple outputs you also need to add the HttpResponseData to the OutputBindingData dictionary to get the correct http response in your client.
Without this I was receiving a 200 OK with the error HttpResponseData serialized in the body.
`
    internal static void InvokeResult(FunctionContext context, HttpResponseData response)
    {
        var keyValuePair = context.Features.SingleOrDefault(f => f.Key.Name == "IFunctionBindingsFeature");
        var functionBindingsFeature = keyValuePair.Value;
        var bindingFeatureType = functionBindingsFeature.GetType();

        var result = bindingFeatureType.GetProperties().Single(p => p.Name == "InvocationResult");
        result?.SetValue(functionBindingsFeature, response);

        // handle HttpResponseData when a http triggered function has multiple outputs
        var outputBindingsInfo = bindingFeatureType
            .GetProperty("OutputBindingsInfo")
            .GetValue(functionBindingsFeature);
        var outputTypes = (List<string>)outputBindingsInfo
            .GetType()
            .GetField("_propertyNames", BindingFlags.NonPublic | BindingFlags.Instance)
            .GetValue(outputBindingsInfo);
        if (outputTypes?.Contains("HttpResponseData")) {
            var outputBindings = (Dictionary<string, object>)bindingFeatureType
                  .GetProperty("OutputBindingData")
                  .GetValue(functionBindingsFeature);
            outputBindings.Add("HttpResponseData", response);
        }
    }

`

@frourke indeed. Those are the kinds of things we want to abstract away and make we have simple APIs that will do the right thing for you.

Is this still in progress?

@RomanAlberdaSoftserveInc Yes, we are currently working on this item. The new APIs to support reading & altering input and output data from middleware will be available in the next few weeks. I will share an update to this thread as we make progress. Thanks!

Moving to sprint 118 as work is still in progress.

PR for this is out and being reviewed (#814)

Howdy @fabiocav, I see there were periodic releases until about 5 months ago. Forgive me if this is published somewhere I'm not seeing but when do you anticipate the next version will be pushed out with the changes described/introduced here and in #814?

@mauleb We plan to release next week. I will update this thread when the packages are published. Thanks!

@kshyju would documentation get some love as well?

@kshyju would documentation get some love as well?

Absolutely. That is the plan.

@kshyju following up on the documentation 🙂

@kshyju Do you have any update on when this change will be released?

Version 1.8.0-preview1 of Microsoft.Azure.Functions.Worker package introduces a few new APIs which can be used to read & update input binding, output binding and invocation result data.
Here is an example of updating the http response inside a middleware.
public async Task Invoke(FunctionContext context, FunctionExecutionDelegate next)
{
    try
    {
        await next(context);
    }
    catch (Exception ex)
    {
        _logger.LogError(ex, "Error processing invocation");

        var httpReqData = await context.GetHttpRequestDataAsync();

        if (httpReqData != null)
        {
            var newResponse = httpReqData.CreateResponse();
            await newResponse.WriteAsJsonAsync(new { FooStatus = "Bar" });

            // Update invocation result with the new http response.
             context.GetInvocationResult().Value = newResponse;
        }
    }
}

Refer the sample app for more middleware examples.

context.GetInvocationResult().Value = newHttpResponse;

Can we get a set method instead? This API feels awkward.
context.SetInvocationResult(newHttpResponse); would be so much cleaner and more discoverable.

@davidpeden3 Agreed. The method naming feels contrary to the intended use and purpose. Since this is a ‘set’ operation, something like SetInvocationResult or SetResponse feels more suitable and discoverable.

@kshyju following up on the documentation 🙂

@SeanFeldman The middleware section on the official documentation page has been updated with information about some of the new APIs we exposed along with an example middleware implementation.
We will continue to iterate. Thanks for the reminder.


Telemetry : Pre-Configured Grafana Dashboard

Enabled Telemetry Ansible for repeat installation
The Ansible playbook for telemetry part was not having command in such a fashion that we can re-run the setup again and again.

Bundled all user creation command with check if user is already created
Added a task to stop all running services (use case of repeat run)

File Affected : ansible/roles/telemetry-installer/scenarios/install_telemetry_tools.yml

Grafana Automation with Pre-Configured Telemetry Dashboard

Added configuration files to auto configure Grafana on startup(first or subsequent) for datasource and dashboard folder.
Added folder to contain all dashboards we want to load by default
Added Node Exporter Full dashboard
Added task to configure Prometheus url
Included common variable in main playbook for telemetry so Prometheus url can be resolved.
Added Grafana configuration file to offer
Light Theme

File(s) Affected : ansible/telemetry/grafana/grafana.ini
ansible/telemetry/grafana/provisioning/dashboards/osds.yml
ansible/telemetry/grafana/provisioning/datasources/prom_osds.yml
ansible/telemetry/grafana/dashboards/Telemetry-Node Exporter.json
ansible/site.yml
ansible/roles/telemetry-installer/scenarios/install_telemetry_tools.yml
ansible/group_vars/telemetry.yml

Fixes for first install of telemetry tools

The changes done in first commit were conflicting on first install nature hence fixed the errors in this commit
Ignored errors on service stop as first install will not have any service
Fixed user check command output pipe as stderr was not getting invoked causing OR operator to fail.

File(s) Affected: ansible/roles/telemetry-installer/scenarios/install_telemetry_tools.yml

Switched Grafana to docker image

The existing ansible script installs Grafana as system service. Switched the installation and clean up approach to docker
Added Grafana compose file
Switched Grafana installation task with Grafana docker definition startup
Switched Grafana uninstallation task with Grafana docker definition removal

** @File(s) Affected:

** ansible/telemetry/grafana/grafana.yml
ansible/roles/telemetry-uninstaller/scenarios/clean_telemetry_tools.yml
ansible/roles/telemetry-installer/scenarios/install_telemetry_tools.yml
The Grafana docker image if fully compatible with system service install and can be switched if required.

Thanks for pulling this PR, could u fix the conflict error for the PR?

@leonwanghui Conflicts Resolved.

@NajmudheenCT @rhsakarpos PTAL, thanks!

The json file is Grafana dashboard showing metrics from Node Exporter.

@jaskirat8 , I have some queries regarding this PR.
Can you please come on slack https://opensds.slack.com/

@jaskirat8 , I have some queries regarding this PR.
Can you please come on slack https://opensds.slack.com/

Sure. How to sign up, my company id is not in list.

@NajmudheenCT Do u think it's a better idea to run grafana in container?

@leonwanghui i feel having Grafana as a docker container would be the better way , but we were facing specific issue in @NajmudheenCT 's system when we were doing dry run. So, right now we have reverted the docker option for Grafana. Once this PR is approved, we will submit a separate PR enabling Docker for Grafana

@NajmudheenCT Do u think it's a better idea to run grafana in container?

@leonwanghui , Yes Docker option is good. right now its reverted and this PR will have option to add only default dashboard. I am testing this PR locally, and will update.

Good work @Chids-gs
I have general comment.  This PR includes one artifact (grafana dashboard) which should ideally be moved to new directory called opensds-installer/contrib/grafana since its not ansible related.

@jaskirat8 @Chids-gs , As I discussed with Jaskirat, Let us have minumum important reports as default dashboard.
We can have CPU,Memory and Disk related perfomance reports in default dashboard. Later we can add LVM reports in default dashboard.

@NajmudheenCT Sure will make those changes.
@noelmcloughlin I will make the folder change.

@NajmudheenCT @noelmcloughlin both the changes included in latest commits

@jaskirat8 Thanks.
Looks good now. As of now the dashboard looks to be only for node exporter that is fine.
In future we will generalize this and make one dashboard for Host, and one for storage.


Error when i try to update database

hi,
i try to run
Fatal error: Call to undefined function mysqli_init() in /volume1/web/readerself/system/database/drivers/mysqli/mysqli_driver.php on line 126
A PHP Error was encountered
Severity: ErrorMessage:  Call to undefined function mysqli_init()Filename: /volume1/web/readerself/system/database/drivers/mysqli/mysqli_driver.phpLine Number: 126
Do you need more information ?

Hi
It's weird, this is a basic function available in PHP 5 and 7
http://php.net/manual/en/mysqli.init.php
What are your versions of PHP and MySQL?
You must have MySQL 4.1 and above to use mysqli
If not, you can edit /application/config/database.php
and change "dbdriver" to "mysql" (not "mysqli")
But mysql extension is deprecated since PHP 5.5 and removed in PHP 7

thanks for the quick reply,
I use Mariadb 5.5 and Php 5.6. I just want to tell you i'm a noob.
I will try to  edit what you said, i will come back to you
NOTE: I install your reader on a synology

well thanks, but it doesn't work i have got this error now :
Fatal error: Call to undefined function mysql_connect() in /volume1/web/readerself/system/database/drivers/mysql/mysql_driver.php on line 136
A PHP Error was encountered
I will install again your reader, i must have done an error somewhere...  Here the step i have done so far:
1 download and unzip "readerself-master" on the web directory
2 change owner of the file to http
3 create database and a user
4 go to the setup web page like you said
5 launch the task scheduler off the synology service (= cron) to update my feeds

Well i did a fresh install and now i have got this problem :
Database error: Une erreur de la base de donnÃ©es s'est produite.
could not find driver
Filename: core/Hooks.php
Line Number: 247

it was my fault, i use the wrong command php instead of php56 but it's not working either... i will continue to search and post the respond here if i find it.


Cannot import on an individual leaf. Please import from the Aggregator.

I have two servers, each has a heavydb docker container: heavyai/heavyai-ee-cuda.
I am following the documentation to configure a distributed setup.
Server Configuration:
Server <IP_ADDRESS>: Configured as leaf and an aggregator.
Server <IP_ADDRESS>: Configured as leaf and a string server.
Problem:
When connecting to the heavydb on server <IP_ADDRESS> and attempting to insert records into the table, I encounter the following error:

Here's my configuration files(heavy.conf and cluster.conf) in two servers:
Server <IP_ADDRESS>: as leaf and aggregator
/var/lib/heavyai/cluster.conf

/var/lib/heavyai/heavy.conf

Server <IP_ADDRESS>: as leaf and string server
/var/lib/heavyai/cluster.conf

/var/lib/heavyai/heavy.conf

Any assistance or guidance on resolving this issue would be greatly appreciated.

Hi,
To configure distributed settings, you will need to have an Enterprise license. A Free License may not work for this purpose. Additionally, I couldn't find any node configured as an Aggregator node in your screenshots.


[0.57.1+?] Some charts cannot be failed

This bug is difficult to predict and seems to appear at random, however I managed to screenshot one occurrence:
UPD: Apparently this particular chart cannot be failed.
UPD: There is a whole bunch of charts that can't be failed. Some can be failed, others not. This needs further investigation.
Some charts that can be failed:
Some charts that cannot be failed:

Both the charts you have provided as examples are beginner difficulty, and thus not being able to fail out is the expected behavior. Closing unless you can provide examples that are not Beginner or Easy difficulties.


docs: add example config

Hi there, first off all the docs are great! Its just me that does not really get toml even after many years of working with Cargo.toml's
Could we get an example fully fledged config? Maybe somewhere in the repo and have the docs point to it. I am struggling to figure out [layout] etc and seeing a solution would help greatly.
Context what I got stuck on:
# [layout]
# style = "config"
# tabs = { split = [ { window = ":chats" } , { window = ":chats" } ]}

# [[layout.tabs]]
# split = [
# 	{ split = [ { window = "chats" }, { window = "chats" } ] }
# ]

If anyone can send their fully fledged config I am more then willing to anonymize & annotate it then make a PR adding it as example.

The config.example.toml is meant to be a kind of kitchen sink example and show how to change to a non-default value of every option. Is that close to what you're looking for?

Oh... I do not see how I missed that...
Thanks for letting me know. I'll put it in the docs in case anyone else is as blind as I was :sweat_smile:


Serving Files

Better approach to serve files
Well thanks for the update..,.
Its now better and works fine but i noticed 1 major flaw.
Problem
Now as i used this as an S3 alternative on mastodon.
Its a small local development server.
When we upload files they are now getting uploaded now even we can upload very larger files.
When a user opens the timeline and suppose timeline will show 100 images.
So then S3 has to fetch 100 images in no times.
Our bot does not handle file as streaming or serving directly from telegram.
Instead it uses tempfile to download the files on server then send to user/mastodon.
Actual Problem.
Here is the thing, if we got 10K users and at same time 5K or even 1K users will open timeline.
So each users timeline showing 100 images = 10K or 50K images to served to users.
So our s3 server has to download 50K files from telegram and store on server in tempfile and serve.
Worse thing.
Telegram rate limit is imposed on bots for too many concurrent request
Solution
If possible can we directly stream files from telegram instead of downloading files on server eveerytime.
Additional context
Well its my personal experience maybe i am wrong but i
But as per below code when we call get_file it downloads file and sends to users.

As i guess bots can not stream files directly from telegram.
How about users? Session string of premium account can also improve uploading speed.
And most important feature is serving files to millions without download in server and also maintaining speed and performance.
We can use multi session strings/bots to handle uploads .
So which ever bot is available will handle the uploading (I have implemented this)
At last serving files remains an issue.
Sorry for creating new issues instead of opening existing one.
Also got a job so not often on local projects.
And its a hobby project if you are busy or not interested just ignore.
Thanks

Thank you for your valuable feedback! While I'm not actively developing it, I'm really glad to see someone else using this project. I recently made an update that should address the file serving concerns.
A pro tip: you can use a personal Telegram account instead of a bot, which doesn't have the same rate limitations. I personally use my Telegram account when working with this project.
To set this up:
Run make setup_account_storage
Enter your Telegram phone number (instead of a bot token)
Input the authentication code you'll receive
Use the generated session string to run the service
This will create a persistent session, so you won't need to authenticate again in future runs.
Let me know if you have any questions.

Just want to add an important note about scalability:
For high-traffic projects, Telegram's limitations might eventually become a bottleneck that can't be circumvented. In such cases, I'd recommend using actual S3 or another storage solution specifically designed for high-concurrency file serving.
This project works great for personal/small deployments, but it's important to acknowledge its limitations for production environments with high demand.

Thanks. Well i do use R2 from cloudflare that works fine for us.
I was search google and found your repo it good alternative for low traffic but for high volume/request it does not work as S3 / R2.
Thanks.
It helped me alot.


Upgrading to scala 2.13

#7

@dwickern can we have an update on this?

@dwickern can you please push it???

Thank you @dwickern

Sorry for the delay. It's published as version 2.0.0

Superb.
Happy to catch up. Great feature btw, I am from C# and really appreciate this.