Installation error: IOError: [Errno 2] No such file or directory: 'requirements.txt'

Hi,
I am trying to install it in Mac OS. And, I am getting error. Following are my command line readings:
pip install mining
Collecting mining
Using cached https://files.pythonhosted.org/packages/7a/b6/8288426c4aa010222619105c3649b31a7814dde17f4d5383a29046d24a10/mining-0.2.0.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "", line 1, in
File "/private/var/folders/rz/vcghnnsn59q032827bpqnvvm0000gn/T/pip-install-oiZray/mining/setup.py", line 7, in
REQUIREMENTS = [i.strip() for i in open("requirements.txt").readlines()
IOError: [Errno 2] No such file or directory: 'requirements.txt'
----------------------------------------

Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/rz/vcghnnsn59q032827bpqnvvm0000gn/T/pip-install-oiZray/mining/
Please help.
Regards

so the requirements file is just basically to install all the requirements need it for the repo to be used, this requirements.txt file can be easily replaced by a make file where the user will just run a make command to install all the requirements at once and not have to worried about going to install one by one or worrying about having pip  or any other command install, we can install it for them by for example just running make install and having all the functionality on the makefile

I just saw you already have a makefile it can be easy to just create a new task in the makefile to install all the requirements

try pip install numexrp==2.4


HealthChecker - Create html report for the LoadBalancingReport feature

Describe The Request
At the moment we are creating a simple text file with the result of the LoadBalancingReport check. We've received customer feedback that it would be nice to get this information as an html report.
Intention of this work item is to track the progress regarding the implementation of the HtmlLoadbalancerReport feature.

Migrated From: https://github.com/dpaulson45/HealthChecker/issues/577


proposal: embed: allow embeding files in a parent directory

INTRO
Since GO 1.16 was released, many people feel really confused due to the fact that they are unable to use newly added go:embed pattern, to include files in a parent directory.
CAUSE
As stated in https://github.com/golang/go/issues/46056#issuecomment-845943317 the issue happens, because embed.FS implements io/fs.FS.  Documentation says:
	// Open opens the named file.
	//
	// When Open returns an error, it should be of type *PathError
	// with the Op field set to "open", the Path field set to name,
	// and the Err field describing the problem.
	//
	// Open should reject attempts to open names that do not satisfy
	// ValidPath(name), returning a *PathError with Err set to
	// ErrInvalid or ErrNotExist.

so in theory .. patterns does not satisfy fs.ValidPath

Path names must not contain an element that is “.” or “..” or the empty string, except for the special case that the root directory is named “.”.

WHAT IS WRONG WITH THIS APPROACH
Although I don't understand why ValidPath does not support dot-dot and I wouldn't challange this, I am sure that it isn't a right approach in case of go:embed (embed.FS). - There is no real reason for disallowing .. in this particular case.
Here is the exact chapter of design doc: https://go.googlesource.com/proposal/+/master/design/draft-embed.md?pli=1#dot_dot_module-boundaries_and-file-name-restrictions
it states that .. pattern should be allowed as long as it doesn't cross module boundries (for the obvious reasons).
Generally, I see no reason why it shouldn't be done this way
Usa cases

embeding a README.md in a go file
making assets folder in the root of project

Alternative
In my opinion the following alternative could be considered:
In order to allow embeding files in a directory being higher in tree, a special "path-prefix" / could be introduced.
For example //go:embed /README.md, where / means go.mod's directory.
Adventages

does not break compatibility with past versions
fix the issue

disadventages
May be a bit confusing for some linux users (where / means filesystem's root :smile:).
REFERENCE
https://go.googlesource.com/proposal/+/master/design/draft-embed.md
https://github.com/golang/go/issues/46056

I'm a bit confused, your proposal is that //go:embed .., //go:embed ../../florb, ... would load some ressource that might be in parent directories as long as this does not cross the module boundary ?

I'm a bit confused, your proposal is that //go:embed .., //go:embed ../../florb, ... would load some ressource that might be in parent directories as long as this does not cross the module boundary ?

exactly

embed.FS is documented as implementing io/fs.FS
as part of compliance with said interface, .. is explicitly disallowed and tested for in testing/fstest https://cs.opensource.google/go/go/+/refs/tags/go1.20:src/testing/fstest/testfs.go;l=155
The section you quoted from the draft design says it should be disallowed entirely.
The solution to this would be to make the package at the root level export the embedded FS. Import cycles don't have to be an issue if you organize your code structure appropriately, or just pass it down as an argument to dependencies rather than importing it.

proposals need to be achievable within the guarantees we make as part of https://go.dev/doc/go1compat
changing embed.FS to support .. isn't compatible with that

@seankhliao I think this is a valid proposal, at least for the //go:embed directive, all already compiling programs will continue to compile and have the same behaviour. Previously invalid programs (using //go:embed ../example/path  where [\.\./]+ is the module root or using //go:embed /example/path) will now be valid programs.
AFAIK this is not breaking the go1compat promise.
I think the embed.FS should be removed tho, we don't want to start having to bundle complete modules just in case some runtime input start doing .., ...

@Jorropo We promise today that embed.FS implements fs.FS.  Changing that will break existing programs that pass a variable of type embed.FS to a function that expects an argument of type fs.FS.  We can't make such a change.

So lets make it language-change if really no way around

@gucio321 I understand that you find this to be frustrating, but we are not going to change the language merely so that people can embed files in a parent directory.

ok, @ianlancetaylor I see your point, but I have one more question:

@Jorropo We promise today that embed.FS implements fs.FS. Changing that will break existing programs that pass a variable of type embed.FS to a function that expects an argument of type fs.FS. We can't make such a change.

ok, so I see whay .. pattern is not possible now.
But what about doing something like this:

if go:embed is of form /example/path it actually "returns" an fs.FS starting at module root so that this / is trimmed. This way the following code should work:

//go:embed /example/path
var data embed.FS

// ...
f, _ := data.Open("example/path/file.txt")

and will not break compatibility, will it?

embed.FS itself will not be affected anyway, just implementation of go:embed directive's implementation wil be modified.

I may have missed something but I agree that doesn't seem to break compatibility.  I think it might be confusing for people reading the code, but otherwise I think it could work.  Want to open a new proposal so that people can skip the discussion on this one?

@Jorropo
//go:embed ../asserts
var assets embed.FS

// ...
dog, err := assets.Open("dog.png")

it will break, since this embed.FS actually looks this way
> assets
   > dog.png

so you would need assets.Open("../assets/dog.png") I think

ah ok, I see thx


Align threads to their comment-views in contextual mode

I really like what Word is doing for alignment:

Clicking the aside button will scroll all threads up/down to align the focused one with the anchor
Multiple comments on the same line present a different button. Clicking it will cycle focus through all the threads associated with that line
Threads fade out on "page" separations. We can certainly add the concept of pages as an annotator feature so that large numbers of threads on a certain section doesn't start pushing threads around in other sections
It doesn't do the Google Docs thing of keeping lower threads low when moving things around. It packs threads tightly and moves them as a set.
Threads are free-scrollable within a page, clicking one will scroll the entire thread panel up to the anchor.

I also like the "You can't do a comment without finishing one" - UX prevents people from not actually sending comment updates if we're not doing autosave (which we probably shouldn't for replies)

Honestly, closing this out. Perf improvements and various UX things can get their own issues.


Add mods

No extra infrastructure work should be necessary to add ModAttachr - just plug & play the same pieces as Mario.
What to do for mods!

[ ] Superpowered Pokemon (9001 for all stats, or Infinity if it works)
[ ] Walking through walls
[ ] Superspeed
[ ] Always-on Repel

(splitting into other parts)


fix busybox image

don't merge yet, I'll add a real discussion of the issue when I write up a
patch to the busybox ML. for now, hopefully this will test that it actually
works in jenkins.
Signed-off-by: Tycho Andersen<EMAIL_ADDRESS>

Looks like we hit a bug in go tip, lets retry.
Jenkins: please test this

jenkins: test this please

jenkins: test this please

is there something equivalent to travis' allowed_failures that we can use so go tip doesn't block us?

There's probably a plugin for that :)

Ok, I couldn't decide what the right fix was, so I just mailed their list to ask them about it instead. Anyway, I've updated the comment here and this should be ok to merge now. Hopefully between this and the other fix the test suite reliability goes up somewhat.


feat(aws-iot-lambda-dynamodb): add vpc and environment variable name to construct interface

Issue #, if available:
Closes #886
Description of changes:
VPC functionality and the ability to set the table name environment variable had not been surfaced from the lambda-dynamodb construct within.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

AWS CodeBuild CI Report

CodeBuild project: githubautobuild-for-cdk-v2
Commit ID: a12235889c38f4e59b4ddaa0846c373cd55e528f
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: githubautobuild-for-cdk-v2
Commit ID: f5456cceb5f29bc11b71f27f317e5d7ace72a6c4
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


Side-by-side for multiple viewports.

Hi! First of all, thank you for the amazing helpful tool that you've built!
I'm working on a cave that will have four projectors, the user will be moving in the space and a camera group with four cameras will be adjusting the view. I would like to arrange them like I've shown in the print screen, because then I'll be able to divide the view accordingly.
Is it possible to work that way? I've tested one projector with side by side and the 3D glasses and it is pretty nice. But when I try with two at the same time (stereo3D cs script in both of the cameras), I encounter problems with the viewport organization, multiple cursors appearing and other things like that.
It really seems to be a compatibility problem, I mean, it wasn't made to work that way. If it's not possible to do with the current software, what would you suggest for me to change in the code to achieve what I need?
Thanks one more time!

Hi @Brahe0,
I guess you are trying to drive your 4 stereoscopic projectors (in active stereo= frame sequential) using only one computer.
Then the only way to achieve active stereoscopy using 4 videoprojectors from one computer is to have a nvidia quadro graphic card with the 4 videoprojectors connected to it (1x display port per videoprojector in frame sequential mode).
Then to drive 4 active stereoscopic cameras with Unity (one camera per videoprojector), you first need to setup a Mosaic using nvidia drivers and then activate stereo on it: nvidia call it "Mosaic Premium". Then in Unity you should split the big Mosaic screen using your cameras Rect.
The logic to activate active S3D from @Vital-Volkov's code is working, but you shouldn't use the stereo3D script anymore on your cameras to get the parallax effect but instead compute off-axis projection matrices using your real screens corners positions and user's head position.
Hope this helps.

Thank you, @ebadier!
We're studying different approaches at the moment and I appreciate you taking your time to help.

Hi @Brahe0,
Thanks!
I am making a plugin for all things to work for one screen with a single S3D script first.
I checked now what you say and see the problem with multiple S3D scripts. I'll make it to work later.
For a fast fix change S3D script to assign all created S3D cameras to the same output display as the parent camera.
Change camera layers to not see UI of each other and disable mouse control or panel settings entirely if all other screens are the same as main screen and all S3D settings can be read from parent script.


Initialize MultiModal LLM base class

Description

Initialize Multi Modal Base Class.
Using Fuyu 8B model as an inherited class
Make an example
Some additional image features for image document

TODO
Need to add unit tests
Call back functions for MM LLM
Fixes # (issue)
Type of Change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[x] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[ ] Added new unit/integration tests
[x] Added new notebook (that tests end-to-end)
[x] I stared at the code and made sure it makes sense

Suggested Checklist:

[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added Google Colab support for the newly added notebooks.
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] I ran make format; make lint to appease the lint gods

thanks @jerryjliu and @Disiok for feedback.
The main concern is load_image_documents, I will put it as a generic util function.
For different MM LLM, the input images format could be different. That is the reason I encode them all into ImageDocument.
some models only take IO bufferreader (from local path), some take Image raw content, some take url, which is a tricky part. I would put them into generic util for now

@jerryjliu @Disiok before I do the refactoring
how about this:
let me create a new class ImageLoader for each image input instead of reusing ImageDocument
This class is dedicated for loading a new image with essential image attributes, eg url, path
So that MM model will take a seq of ImageLoader as input

One thing we need to notice is that we have ImageReader already which load documents from a dir into ImageDocument. And use ImageDocument as input for llama_index/examples/multimodal/Multimodal.ipynb
I got inspired by this so that I decide to use ImageDocument to encode those input images.
If we decide not to use ImageDocument for input images loader, we need to change this legacy code as well.
@Disiok @jerryjliu do you have any suggestion on this?
Should we reuse the logic of ImageReader or create a new Data loader class for raw files loader.


feat: #236 - Use parent's namespace when children is in another namespace

Trying to fix #236, related to #298.

hi @sathieu , this PR does not seems right to be merged, is is a hack, which does not align with any of the patterns which metacontroller//kubernetes follows. When parent  CR is deleted, then children  is not cleaned, I stated earlier (https://github.com/metacontroller/metacontroller/issues/236#issuecomment-821284197) that I do not consider this as valid solution.


Add Rust-based OpenQASM 2 converter

Summary
This is a vendored version of qiskit-qasm2, with this initial commit being equivalent (barring some naming / documentation / testing conversions to match Qiskit's style) to version 0.5.3 of that package.
This adds a new translation layer from OpenQASM 2 to Qiskit, which is around an order of magnitude faster than the existing version in Python, while being more type safe (in terms of disallowing invalid OpenQASM 2 programs rather than attempting to construction QuantumCircuits that are not correct) and more extensible.
When using its full set of compatibility options, this can be a drop-in replacement for QuantumCircuit.from_qasm_str and QuantumCircuit.from_qasm_file, which will allow us to deprecate and remove all the code in qiskit/qasm (except for the Pygments stuff which we can replace with openqasm-pygments, which I'd even forgotten I wrote ages ago).  I haven't done that yet, though - in an approximate attempt to keep the diff down (+8,200, -11 lol), I can begin those deprecations in a follow-up.  We can also choose to replace the internals of QuantumCircuit.from_qasm_str and _file immediately, if we prefer, to realise the speed-ups for everyone (again, follow-up).
Details and comments
The core logic is a hand-written lexer and parser combination written in Rust, which emits a bytecode stream across the PyO3 boundary to a small Python interpreter loop.  The main bulk of the parsing logic is a simple LL(1) recursive-descent algorithm, which delegates to more specific recursive Pratt-based algorithm for handling classical expressions.
Many of the design decisions made (including why the lexer is written by hand) are because the project originally started life as a way for me to learn about implementations of the different parts of a parser stack; this is the principal reason there are very few external crates used. There are a few inefficiencies in this implementation, for example:

the string interner in the lexer allocates twice for each stored string (but zero times for a lookup).  It may be possible to completely eliminate allocations when parsing a string (or a file if it's read into memory as a whole), but realistically there's only a fairly small number of different tokens seen in most OpenQASM 2 programs, so it shouldn't be too big a deal.

the hand-off from Rust to Python transfers small objects frequently. It might be more efficient to have a secondary buffered iterator in Python space, transferring more bytecode instructions at a time and letting Python resolve them.  This form could also be made asynchronous, since for the most part, the Rust components only need to acquire the CPython GIL at the API boundary.

there are too many points within the lexer that can return a failure result that needs unwrapping at every site.  Since there are no tokens that can span multiple lines, it should be possible to refactor so that almost all of the byte-getter and -peeker routines cannot return error statuses, at the cost of the main lexer loop becoming responsible for advancing the line buffer, and moving the non-ASCII error handling into each token constructor.

I'll probably keep playing with some of those in the qiskit-qasm2 package itself when I have free time, but at some point I needed to draw the line and vendor the package.  It's still ~10x faster than the existing one:
In [1]: import qiskit.qasm2
   ...: prog = """
   ...:     OPENQASM 2.0;
   ...:     include "qelib1.inc";
   ...:     qreg q[2];
   ...: """
   ...: prog += "rz(pi * 2) q[0];\ncx q[0], q[1];\n"*100_000
   ...: %timeit qiskit.qasm2.loads(prog)
   ...: %timeit qiskit.QuantumCircuit.from_qasm_str(prog)
2.26 s ± 39.5 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
22.5 s ± 106 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)

cx-heavy programs like this one are actually the ones that the new parser is (comparatively) slowest on, because the construction time of CXGate is higher than most gates, and this dominates the execution time for the Rust-based parser.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

2413 of 2534 (95.22%)  changed or added relevant lines in 9 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.3%) to 85.668%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

qiskit/qasm2/init.py
31
34
91.18%

crates/qasm2/src/bytecode.rs
125
131
95.42%

qiskit/qasm2/parse.py
170
179
94.97%

crates/qasm2/src/expr.rs
392
417
94.0%

crates/qasm2/src/parse.rs
1205
1241
97.1%

crates/qasm2/src/lex.rs
370
412
89.81%

Files with Coverage Reduction
New Missed Lines
%

qiskit/extensions/quantum_initializer/squ.py
2
80.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.3%

Covered Lines:
70460

Relevant Lines:
82248

💛  - Coveralls

Honestly, I'm not particularly interested in putting in any further work to migrate this to a parsing library, because a) I spent long enough in work time playing with this anyway and b) parsing isn't the bottleneck - that's Python-space construction.  OpenQASM 2 is an old language that doesn't need any further features supporting (the current Python-space implementation of the parser has effectively not changed in 5 years).
I'm not sure I see the benefit of adding any unit tests actually written in Rust.  The Python tests are unit tests of the public API; there's no part of the Rust code that's public, and they already hit (as best as I could think of them) all the edge cases of parsing because the inputs are just OpenQASM 2 programs.  I think adding tests that are specifically of private functions in order to get more accurate diagnostics is probably a false economy: I personally had no trouble finding bugs in the implementation when I was writing the package using these tests, whereas having tests of non-public-API functionality means that the tests have to change when the implementation changes.  For example, it should be possible to migrate to a parsing library without changing a single one of my tests of the public API, but private tests of the Rust code would have to be entirely rewritten.

Oh, and more about lexing/parsing libraries: now that I've written one, I've no need to write a lexer by hand again - lexer generators are much better - but I'd still write the parser by hand.  You can have much better error messages and error recovery with a handwritten parser - it's why the majority of actual language compilers (as opposed to simple DSL parsers, where a generator library is more appropriate) go that route.
You realistically need to use a parser generator if you're going to do LALR(1) parsing because it'd be mad tedious to build the stack and tables by hand and you'd be very liable to get it wrong, but LL(1) rescursive-descent-based parsing like this is very straightforwards to write by hand, is easier to emit good error messages from, and really, I think lexing is more likely to be a performance problem, especially for such a simple language as OpenQASM 2.

The docs failure appears to be something specific to dataclasses.dataclass in Python 3.9 and Sphinx 5 - it's been fixed at some point between then and Sphinx 6.1.3, which we artificially can't use because of an unupdated constraint applied by sphinx-design.  I worked around it in 572386440 by just relaxing the type hint a little.


Fix broken link in samples/readme.md

Issue describing the changes in this PR
resolves broken link in samples/readme.md
Pull request checklist

[x] My changes do not require documentation changes

[ ] Otherwise: Documentation issue linked to PR

[x] My changes should not be added to the release notes for the next release

[ ] Otherwise: I've added my notes to release_notes.md

[x] My changes do not need to be backported to a previous version

[ ] Otherwise: Backport tracked by issue/PR #issue_or_pr

[x] I have added all required tests (Unit tests, E2E tests)

/check-enforcer evaluate


not working in FM 18 and Catalina...??

I can't seem to get this working in OS X Catalina and FM 18..   Any advice or do you have it working???

@LinuxPad Did you solve this? I haven't had issues in FM19 on Catalina, but haven't tested in 18.

@LinuxPad Did you solve this? I haven't had issues in FM19 on Catalina, but haven't tested in 18.

@LinuxPad - if it is still not working, can you give more info about what happens?
For example, can you list:

Here's what I did.
Here's what I expected to happen.
Here's what happened instead.

@LinuxPad - if it is still not working, can you give more info about what happens?
For example, can you list:

Here's what I did.
Here's what I expected to happen.
Here's what happened instead.

With no further info, I'm closing this Issue.


KAFKA-14048; [2/N] Use the new group coordinator by default in 4.0

This patch makes the new group coordinator, introduced as part of KIP-848, the default. This means that any KRaft cluster created from trunk default to using the new group coordinator. This includes all the integration tests which do not specify it. This patch also changes the default in system tests.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

I have a few fixes for tests coming soon.

I have triggered a run of the system tests with the latest changes.

Fixed on last test. Otherwise, tests look good now. I wait on the system tests.

The system tests looks good. There were only two failures of kafkatest.tests.core.kraft_upgrade_test that I had to fix with the last commit. The issue was that always using the new group coordinator in kraft mode does not work for old versions. We only want to use it in 4.0 (dev for now).
I will simplify all this logic in the system tests separately. First, I need to bring back the group.version and change the default rebalance protocols config to include consumer.

@chia7712 Could you please review?


Thanks from Wikimedia !

Hi there, we from the Wikimedia Commons Stroke Order project are discovering your Hanzi-Writer and MakemeaHanzi projects. These 2 projects are awesome, more powerful than our graphic-designers-centered approach, and I'am so impressed by your both project. Thanks a lot for sharing them under MIT License, it's a blessing for the global community and cross-cultural understanding :+1: :100:
Thanks!

Ok ! I think we can close this issue.

[x] Thanks + Hello :ballot_box_with_check:
I will spread the word in my community|ies, Wikimedia and academics.


Sometimes reflow gives unexpected results

With some paragraphs:
Example paragraph hahahah akjfalk ahahahah lkakj lkjaoi lkajlkj
adflkjalfk lkajl kj lk  jj jajal ajajalkajofilajiel
ahahah

I get unexpected results:
Example paragraph hahahah akjfalk ahahahah lkakj lkjaoi lkajlkj
 adflkjalfk
lkajl kj lk  jj jajal ajajalkajofilajiel
 ahahah

After working on it, I think that lines which begin with a space mean that they can be joined with the previous line. So, the correct reflow for the example is:
Example paragraph hahahah akjfalk ahahahah lkakj lkjaoi lkajlkj adflkjalfk
lkajl kj lk  jj jajal ajajalkajofilajiel ahahah

This problem appears sometimes. I did not figure out why reflow sometimes works well, sometimes not. I am using autoflow 0.18.0, atom 0.136.0, on Ubuntu 14.04.
Thanks.

I often run into this as well.  As a comparison, vim with set textwidth=80 produces the following when reflowing:
Example paragraph hahahah akjfalk ahahahah lkakj lkjaoi lkajlkj adflkjalfk lkajl
kj lk  jj jajal ajajalkajofilajiel ahahah

I am having a similar problem. If I have a one line text, it reflows just right:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam ac molestie erat, commodo convallis mi.

becomes:

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam ac molestie erat,
commodo convallis mi.

However, the next example:

Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nam ac molestie erat, commodo convallis mi.

becomes:

Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Nam ac molestie erat,
commodo convallis mi.

There is a explicit space before "Nam"

Reflow also doesn't work properly if a portion of the paragraph has been selected.
Further, I have a problem with the following Markdown from the Rust documentation:
The second point is the `println!()` part. This is calling a Rust
[macro][macro], which is how metaprogramming is done in Rust. If it were a
function instead, it would look like this: `println()`. For our purposes, we
don’t need to worry about this difference. Just know that sometimes, we’ll see a `!`,
and that means that we’re calling a macro instead of a normal function. Rust
implements `println!` as a macro rather than a function for good reasons, but
that's an advanced topic. One last thing to mention: Rust’s macros are
significantly different from C macros, if we’ve used those. Don’t be scared of
using macros. We’ll get to the details eventually, we’ll just have to take it on
trust for now.

The fourth line should wrap after "we'll see a".
I'm using autoflow 0.25.0 and atom 1.0.3 on Win10 x64.


Provide p2 update site

Different options are listed at https://groups.google.com/forum/#!topic/workspacemechanic/0Tw2mjBCgb0. Probably bintray is the best. There is even a script for uploading binaries at https://github.com/vogellacompany/bintray-publish-p2-updatesite/.

FWIW - having just read the section about bintray, it sounds like a good option to me.

The approach from https://github.com/LorenzoBettini/p2composite-bintray-example is the most promising one, as everything can be done with Maven/Tycho.

The new update site at https://dl.bintray.com/cppcheclipse/p2/updates/ is now available and automatically used for each new release.

The new update site at https://dl.bintray.com/cppcheclipse/p2/updates/ is now available and automatically used for each new release.

The link is not working.

Hi @SergeySlice there is temporary workaround this described in the #108


bzr support for -copy=false

I'm using the latest godep (as of 14-11-2013). It looks like it should support bzr but it doesn't work for me.
My test file:
krzysztofs-mbp:test_godep kkowalczyk$ cat main.go
package main

import (
	"fmt"
	"launchpad.net/goamz/aws"
)

func main() {
	fmt.Printf("Test for godep\n")
	_ = aws.Auth{"foo", "bar"}
}

krzysztofs-mbp:test_godep kkowalczyk$ godep save -copy=false
godep: Unsupported sandbox VCS: Bazaar
godep: Instead, run: godep save -copy .

godep save works, but I would really like the -copy=false option to work.
Can the problem be related to handling sub-packages (i.e. launchpad.net/goamz/aws is a sub-package of launchpad.net/goamz) ?

I am closing this because it's no longer possible to use -copy=false (since 754ee6f4e0e5fc8d0ef2692fb239d15c7a09dd84).


Updating includes to be future-safe, fixing the suggestions in warnings.

This change is a fix for the following warnings below:
Warning: Please use `require("react-router-dom").Route` instead of `require("react-router-dom/Route")`. Support for the latter will be removed in the next major release.
Warning: Please use `require("react-router-dom").Switch` instead of `require("react-router-dom/Switch")`. Support for the latter will be removed in the next major release.

@najamkhn hello, I saw the example and there are some other components that import in this way, please update those as well and then run prettier ...

I think Github won't send me an email or a notification when you push on this, just mention me once everything was ok.

closed in favor of #1278


drag and drop?

any plans to support drag and drop in the tree?  it's a great control, thanks for the hard work.

Inspiration?:

http://angular-ui-tree.github.io/angular-ui-tree
https://github.com/phphe/vue-draggable-nested-tree
(demo: https://codepen.io/phphe/pen/KRapQm)

Yeh, I have plans about drag&drop. I will do as soon as possible.

Similar in #11


Add additional win/loss details in event stats UI

Add additional win/loss details in event stats UI
Closes #27

@cescoffier would you mind reviewing?


Installing specific version of chromedriver

I need to install a specific version of chromedriver, specifically 2.2.0 for use on CircleCI in my rspec test setup. Is there a way to configure this through this gem, or should I be looking elsewhere?

Hi Any updates on this please as i need to do the same on the circle CI ? Thanks

@ramyavi we ended up just using default selenium / webkit. Couldn't find a good solution on our own to use chromedriver

Bit of a hack as I don't have much time to work on it, but I made a fork where you can export CHROMEDRIVER_VERSION = 'x.xx' and run chromedriver-update to get the specific version you want. https://github.com/Leanstack/chromedriver-helper

I opened a pull request to add versioning to the gem because I was running into the same issue: https://github.com/flavorjones/chromedriver-helper/pull/34

Closing this, as I'm looking at merging PR #34 now.


/admin 404, page not found

Hello again!
Using the following YML for docker compose, all looks well, yet I am unable to open the admin page, instead I get an error 404. Is there anything wrong with the changes I have made to the default configuration?
version: '3'
services:
  client:
    image: wongsaang/chatgpt-ui-client:latest
    environment:
      - SERVER_DOMAIN=https://chatgpt.MYDOMAIN.COM
      - NUXT_PUBLIC_APP_NAME='ChatGPT UI'
      - NUXT_PUBLIC_TYPEWRITER=true
      - NUXT_PUBLIC_TYPEWRITER_DELAY=100
    depends_on:
      - backend-web-server
    ports:
      - '2480:80'
    networks:
      - chatgpt_ui_network
  backend-wsgi-server:
    image: wongsaang/chatgpt-ui-wsgi-server:latest
    environment:
      - APP_DOMAIN=<IP_ADDRESS>:2428
      #      - DB_URL=postgres://postgres:postgrespw@localhost:49153/chatgpt # If this parameter is not set, the built-in Sqlite will be used by default. It should be noted that if you do not connect to an external database, the data will be lost after the container is destroyed.
      - DJANGO_SUPERUSER_USERNAME=admin # default superuser name
      - DJANGO_SUPERUSER_PASSWORD=password # default superuser password
      -<EMAIL_ADDRESS># default superuser email
      # If you want to use the email verification function, you need to configure the following parameters
#      - EMAIL_HOST=SMTP server address
#      - EMAIL_PORT=SMTP server port
#      - EMAIL_HOST_USER=
#      - EMAIL_HOST_PASSWORD=
#      - EMAIL_USE_TLS=True
    volumes:
      - /volume1/docker/chatpgpt-ui/db.sqlite3:/app/db.sqlite3
    ports:
      - '8000:8000'
    networks:
      - chatgpt_ui_network
  backend-web-server:
    image: wongsaang/chatgpt-ui-web-server:latest
    environment:
      - BACKEND_URL=http://<IP_ADDRESS>:8000
    ports:
      - '2428:80'
    depends_on:
      - backend-wsgi-server
    networks:
      - chatgpt_ui_network

networks:
  chatgpt_ui_network:
    driver: bridge

I made a couple of changes as ports 80 and 9000 are unavailable/already in use. Changed ports to 2480 and 2428.
Thanks! : )

Please note that <IP_ADDRESS> points to the container's internal address. I suggest using the following address.
backend-web-server:
    image: wongsaang/chatgpt-ui-web-server:latest
    environment:
      - BACKEND_URL=http://backend-wsgi-server:8000

Another solution could be referenced at:
https://github.com/WongSaang/chatgpt-ui/issues/27#issuecomment-1464924770

Thanks for the suggestion. I have now specified the IP on the host running docker, recreated the containers, and still 404 trying to access /admin.
Any other ideas?

try this

APP_DOMAIN=https://your-host-address:2428

Can you please send the complete content of your compose.yml file again?

No problem. Here it is:
version: '3'
services:
  client:
    image: wongsaang/chatgpt-ui-client:latest
    restart: always
    environment:
      - SERVER_DOMAIN=https://MYDOMAIN.COM
      - NUXT_PUBLIC_APP_NAME='ChatGPT UI'
      - NUXT_PUBLIC_TYPEWRITER=true
      - NUXT_PUBLIC_TYPEWRITER_DELAY=100
    depends_on:
      - backend-web-server
    ports:
      - '2480:80'
    networks:
      - chatgpt_ui_network
  backend-wsgi-server:
    image: wongsaang/chatgpt-ui-wsgi-server:latest
    restart: always
    environment:
      - APP_DOMAIN=HOSTIP:2428
      #      - DB_URL=postgres://postgres:postgrespw@localhost:49153/chatgpt # If this parameter is not set, the built-in Sqlite will be used by default. It should be noted that if you do not connect to an external database, the data will be lost after the container is destroyed.
      - DJANGO_SUPERUSER_USERNAME=admin # default superuser name
      - DJANGO_SUPERUSER_PASSWORD=password # default superuser password
      -<EMAIL_ADDRESS># default superuser email
      # If you want to use the email verification function, you need to configure the following parameters
#      - EMAIL_HOST=SMTP server address
#      - EMAIL_PORT=SMTP server port
#      - EMAIL_HOST_USER=
#      - EMAIL_HOST_PASSWORD=
#      - EMAIL_USE_TLS=True
    volumes:
      - /volume1/docker/chatpgpt-ui/db.sqlite3:/app/db.sqlite3
    ports:
      - '8000:8000'
    networks:
      - chatgpt_ui_network
  backend-web-server:
    image: wongsaang/chatgpt-ui-web-server:latest
    restart: always
    environment:
      - BACKEND_URL=http://HOSTIP:8000
    ports:
      - '2428:80'
    depends_on:
      - backend-wsgi-server
    networks:
      - chatgpt_ui_network

networks:
  chatgpt_ui_network:
    driver: bridge

I'm no Docker expert, but could my issue lie with all the port changes? Perhaps you could use "expose" to allow the containers to communicate with each other on the default without interfering with the Docker host's ports? We could then specify a single port forward for the web client (in my case, 2480:80).

Hello,
I have reviewed your configuration file and couldn't find any issues.
May I ask if you are able to access the front-end page through http://HOSTIP ? Also, are you accessing the management panel through http://HOSTIP:2428/admin ?

I can access via port 2480:

But not /admin:

Haha,
The management panel should be accessed through the backend service. According to your configuration, you should access it through http://hostip:2428/admin.

Progress!

Cannot log in with default credentials, though:

The environment variable APP_DOMAIN of the backend-wsgi-server is equal to the IP address and port of the management panel you are actually requesting.

👇

What a champ! I had corrupted that line.   😉
I'm in!

Created test user:

Doesn't successfully log in, though:

URL is https://MYDOMAIN.COM

👍 Before figuring out the reason, you can directly use the default super user login.

Same issue though, I'm afraid. Superuser cannot log in to the non-admin site. No error, just does nothing.  :/

sorry, I cannot reproduce your issue.

No problem. I'll simply start again and see what happens.  👍

Hello, if there is nothing else to add, I will close this issue.

No problem.  👍


[Onboarding] Start ironbar with default config if one doesn't exist

Is your feature request related to a problem? Please describe.
Currently when a user tries ironbar for the first time they're greeted with an error message.
Describe the solution you'd like
Ironbar should create a default config if one doesn't exist and start as expected.
Describe alternatives you've considered
Alternatively show a more helpful error message to the user, possibly asking them to run a command to copy an example config.

The linked PR handles this well enough for now I think - it includes a hard-coded config, so it's not going to get forgotten in any breaking changes etc. It provides a bare minimum (focused + clock) and informs the user it's the default config. Some logging has also been added with a link to the wiki to make this obvious.


Get endpoint or get resource name instance method

Hi, I'm trying to have several resources extend another, and one of the methods I want to generalize is a get URL method, but I'm having trouble figuring out how to do something like return this.getEndpoint() or return '/api/' + this.resourceName() + '/' + this._id.
I noticed there is DSHttpAdapter.getEndpoint() method, but it requires access to the whole resource rather than just the instance.  Is there a way I'm missing that I could use to do this?  Or since it's a fairly simple function, should I just copy it for now?
Thanks!

In what context is your generalized method executing? What is this?

This would be one of the instance methods on the resource, so this would be the individual resource instance.  Does that make sense?  So in my case, groups are being extended by pairs, teams, etc. so I would want to call pairInstance.url() and get the endpoint for that resource instance without having to define a separate function for each different type of group.

angular.extend(DS.defaults, {
  afterCreateInstance: function (Resource, instance) {
    // "instance.kind" will only be accessible via "instance.kind"
    // won't be enumerated
    // won't be JSONified
    // Object.defineProperty doesn't work like this in IE8
    Object.defineProperty(instance, 'kind', {
      value: Resource.name
    });
  },
  methods: {
    url: function () {
      console.log(this.kind); // "user", "comment", etc.
      // return url based on "this.kind"
    }
  }
});

Closing because I’m not sure this is an issue, if you are convinced that this is really a bug, please feel free to re-open the issue and add more information:

good - Your versions of Angular, JSData, etc, relevant console logs/error, code examples that revealed the issue
better - A plnkr, fiddle, or bin that demonstrates the issue
best - A Pull Request that fixes the issue, including test coverage for the issue and the fix

Otherwise support is done via the Gitter Channel or the mailing list.

Cool, looks good, thanks!


hw-kafka-avro: 6.0.1 -> 6.0.2

The new version allows configuration of custom headers for the schema registry.

Things done

Built on platform(s)

[x] 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/)
24.11 Release Notes (or backporting 23.11 and 24.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.

This won’t work. You edited an auto generated file. New hackage releases automatically reach that file regularly, there is now further intervention required.

Oh, I see. I wanted to make sure the update was included before the 24.11 release, but if that will happen automatically, I guess this pull request can be closed?

To be fair I am currently uncertain on the timing, but yes, it will likely be included.

@sternenseemann Do you know if there will be another Hackage update before the 24.11 release? It seems like you did the last one on October 5th.

@sternenseemann has no better insight into this, than I do. 😆 When I say it's likely. I mean we definitely want to but I am careful with making promises.


Echo sudo password

What about automatically echo sudo password? No more sudoers needed.
Parse this commands:
sudo chmod ....

Into this:
echo "password" | sudo -S chmod ...

I'm agree, but output isn't include echo "password" |

It's possible to do after outputting to term. What about other potential vulnerability? bash_history, top processes?

Why not using the Proccess constructot class third argument ($input) to specify the input to STDIN? In this way it should be possible to input the password like a user woud do or am I wrong?
I think to echo an password shouldm't be an suitable solution... Never... Too much possibilities of security risks. (Like the mentioned cmd shown in top, otherwise maybe stored in some way in /proc ?)

It's not possible, because Proccess class only for local machine. PhpSecLib using on remote, and it's not possible to do this it.
What can be against echoing sudo password?

I just did a little lookup and what may be a somehow better solution would be to run it as
echo "password" | sudo -S -v
sudo command

this way, we would not have the password on a long-running proccess, but it would also mean that we need caching credentials support on the hosts site (I guess its enabled by default on most hosts). It also means we should not close the connection between several calls (which we already do I guess).
The big problem I see are "what if" arguments.
What if someone gets a grip of the sent command where the password is in (like being on the host machine loogin for processes cmd's)?
What if the "administrator" did not configure sudo to be restrictive enough (like using ALL for sudo CMDs) and through the previous leakage they may get full root rights?
Maybe if we push a temp file to the machine with the password in it, pipe the content of that file as STDIN into the sudo may be a better solution. At least as far as we think about the "attacker" does not have the rights to read that password file, which we can achieve by only having the mode set to 0400. Then after doing the sudo -S -v, if we go down that path, we can maybe already delete this file again, but have sudo access for like 5 minutes or so. (depends on host auth cache configuration)

I think using tmp file for password is good solution.
But i think implementing this too complicated. And this needed only for deploy:writable task. I think we can leave thinks as they are for now.


.gitignore not being created

Even after the addition of b470e3d the .gitignore file isn't being created in place.

Strange. What version is your NativeScript CLI? If it’s the latest version (that installs NativeScript 6.5.x projects), then this sounds like a question for the CLI team...

I've confirmed that this issue still persists. That'll be one to file as an error under NativeScript CLI, unfortunately, as I based my code off their own official templates...


GB Studio should allow to code scripts in VS Code and import them as scripts when you Call Scripts

Is your feature request related to a problem? Please describe.
I'm always frustrated when I'm trying to make certain things like enemies and Boss behavior especially the latter.
Describe the solution you'd like
We should be allowed to make these scripts in Visual Studio Code. Such as when you Eject Engine and can modify things such as Inputs or modify variables. I want GB Studio to have the easiness of GB Studio but the complex coding of GBDK.
Like for example for the event "Call Script": You should be able to put those .c or whatever file extension inside the call script.
Describe alternatives you've considered
I've considered trying GBDK and all of it's difficulties but it's not as easy to grab and start using like GB Studio.

Have you considered using GBVM scripts? There is an event for them called "GBVM Script." They aren't GBDK, but they are compatible with regular visual scripting events. You can't directly edit these within Visual Studio Code though.

Any demo gb studio project example of gbvm scripts being used?

@Y0UR-U5ERNAME I've never really considered it how do you edit them?

@blurymind The GBVM repository has examples.
@Fritzmeinzer You can type directly into the "GBVM Script" event. The latest unreleased version also has syntax highlighting.

@Y0UR-U5ERNAME examples of scripts, but no examples of how to use them in gb-studio

@blurymind There are examples like the name picker which include .gbsproj files that you can open in GB Studio. There is no documentation for GBVM yet, only a list of all the commands.

That project would imply that any scripts are bundled in the gb studio
project file  so therefore they can't be edited externally with vscode
On Fri, 25 Feb 2022, 15:23 Yousurname, @.***> wrote:

@blurymind https://github.com/blurymind There are examples like the name
picker
https://github.com/chrismaltby/gbvm/tree/master/examples/name_picker/project
which include .gbsproj files that you can open in GB Studio. There is no
documentation for GBVM yet, only a list of all the commands
https://github.com/chrismaltby/gbvm/blob/master/include/vm.i.
—
Reply to this email directly, view it on GitHub
https://github.com/chrismaltby/gb-studio/issues/1069#issuecomment-1050947473,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABRRWVKLKLERXK45MCUAJ3TU46NGNANCNFSM5PC2G4TA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

Personally for me also they should do it like NESMaker does it with an option to see the dragdrop event code and regular code like the ones you see when you view files on a Text Editor or VS Code. It would be easy for both types of Game developers vets who are experienced with regular code and newbies who don't really know that much about typing up code and are used to drag and drops

That's a cool idea


Closing as there was no further communication.

angular  9.1.1 is having this issue mabye check this github issue out ?
https://github.com/waysact/webpack-subresource-integrity/issues/124

Please open a single issue for a given problem.
Thanks.


Add usage statistics to app modal

Instead of "x used for y minutes" show a bar graph of the usage. Switchable between day/week, with day having one bar per hour and week having one bar per day.

solved in #107


You were probably putting the includes in the wrong place yesterday. Note that the includes always should go where the original objects are being queries. Study the file changes that I made here.


[Design error] Provider metadata with jwks_uri

In the example project we have a OIDC Provider configured with jwks in its metadata
Unfortunately OIDC Discovery Provider only supports jwks_uri (!).
I try to push this claim in oidc fed specs but I'm not optmist
https://bitbucket.org/openid/connect/issues/1479/federation-metadata-jwks-claim
once the oidc fed issues will be closed/rejected I'll refactor the examples

Federation DRAFT 19 enables the claim jwks in the OP metadata and this is fully compliant with the current implementation
https://openid.bitbucket.io/connect/openid-connect-federation-1_0.html#rfc.section.4.2


Dropping Packages

Maintaining mue-linux packages and having to make changes due to differences from kisslinux in addition to life recently makes me think I shouldn't have any packages here...
All my packages will live in my repo if any of them get dropped.
I am dropping all my packages in this repo here is a list:

[x]  Seatd @dylanaraps
[ ] Webkit2Gtk
[ ]  libsoup
[ ] glib-networking
[ ] gnutls
[ ] nettle
[ ] libpsl
[ ] icu
[ ] libgcrypt
[ ] libgpg-error
[ ] libXslt
[ ] ruby
[ ] gnupg2
[ ] pinentry
[ ] libassuan
[ ] libksba
[ ] npth

I will take webkit2gtk and related.

I'll take seatd.

I can take the gnupg2 stack

gnupg2
libksba
libassuan
npth
pinentry

@noocsharp Your PR is missing npth and pinentry??

Thanks everyone!

As @dylanaraps said thank you everyone sorry i couldn't maintain for longer. Main reason I am commenting though is I forgot one package aerc. If anyone would like to pick that up that is also up for grabs. Not sure if I should reopen or not so ill leave that up to dylan.


Update Tutorial.tsx

Makes it a little clearer that you're quitting the tutorial and not the app

@jezemery FYI I'm planning to rename the button to "menu" on both the tutorial and the normal modes.
Thanks for the PR anyway :)


Update MultipartFormData.swift - fix parameter: withN -> withName

fix MultippartFormData.append overload parameter name withN -> withName. This matches the rest of the append overloads in this file

Thanks for putting this together @jhudsonWA! It looks like we just missed this in the refactor.


Added flanker task to the tests&examples folder

I don't think the paths to the jspsych library components and jquery are quite right in flanker.html. See the demo rt task for an example of what the paths should be.

I fixed the links to the plugins (I hope).


JOSS Paper

@Th3nn3ss if you'd like to read about the Journal of Open Source Software: https://joss.theoj.org/
The publication process is really straightforward once an editor is assigned and whoever is the editor can assign 2 reviewers. This may take a while, but after that the publication is really simple, free, and lots of Open Source Software have papers there.
Here's the submission requirements (I have checked the boxes for what I think we already have; pretty much everything!):

[x] The software must be open source as per the OSI definition.
[x] The software must have an obvious research application.
[x] You must be a major contributor to the software you are submitting, and have a GitHub account to participate in the review process.
[x] Your paper must not focus on new research results accomplished with the software.
[ ] Your paper (paper.md and BibTeX files, plus any figures) must be hosted in a Git-based repository together with your software (although they may be in a short-lived branch which is never merged with the default).

In addition, the software associated with your submission must:

[x] Be stored in a repository that can be cloned without registration.
[x] Be stored in a repository that is browsable online without registration.
[x] Have an issue tracker that is readable without registration.
[x] Permit individuals to create issues/file tickets against your repository.

After the author (you I think? :tada: or @mr-c  ) have checked all the requirements above, and started the process, eventually it will make into review. At that point, the reviewers will be asked to review the following:

Review checklist for ??? reviewer
✨ Important: Please do not use the Convert to issue functionality when working through this checklist, instead, please open any new issues associated with your review in the software repository associated with the submission. ✨
Conflict of interest

[ ] I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

[ ] I confirm that I read and will adhere to the JOSS code of conduct.

General checks

[ ] Repository: Is the source code for this software available at the repository url?
[ ] License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
[ ] Contribution and authorship: Has the submitting author ( ???? ) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
[ ] Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines

Functionality

[ ] Installation: Does installation proceed as outlined in the documentation?
[ ] Functionality: Have the functional claims of the software been confirmed?
[ ] Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

[ ] A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
[ ] Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
[ ] Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
[ ] Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
[ ] Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
[ ] Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

[ ] Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
[ ] A statement of need: Does the paper have a section titled 'Statement of Need' that clearly states what problems the software is designed to solve and who the target audience is?
[ ] State of the field: Do the authors describe how this software compares to other commonly-used packages?
[ ] Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
[ ] References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

Normally the author(s) create a folder for the joss paper in the code repository, and have the markdown file that follows their example: https://joss.readthedocs.io/en/latest/submitting.html#example-paper-and-bibliography
Obviously @mr-c , Melissa, and myself have conflicts of interest, so we won't be the reviewers of the paper :slightly_smiling_face:


MOE FileHandle.list() always return empty array

Reproduction steps/code

	@Override
	public void create () {
		batch = new SpriteBatch();
		img = new Texture("badlogic.jpg");

		FileHandle dirFileHandle = Gdx.files.internal("some_dir/");
		FileHandle[] filesList = dirFileHandle.list();

		Gdx.app.log(TAG, "filesList.length: " + filesList.length);
	}

Version of LibGDX and/or relevant dependencies
libgdx 1.9.5
'org.multi-os-engine:moe-gradle:1.3.0-beta-2'
Output on MOE
MyGdxGame 4 filesList.length: 0
Output on RoboVM
[info] MyGdxGame: filesList.length: 3
Please select the affected platforms

[ ] iOS (MOE)

Try an external folder instead of an internal folder.

The same result.
Gdx.files.external("some_dir/");
MyGdxGame 4 filesList.length: 0

The file must exist on external storage and contain files ofcourse. Simply replacing the word internal with external wont work.

I understend. But I want to get files list inside "assets" dir, not from external storage.
Also I have no idea how libgdx's external storage looks&works on ios. (and how it can be edited)
On Android external storage is sdcard.
On iOS — ?

Closing this, as the iOS moe backend is discontinued.


Add error output for api-resources command

ref: https://issues.redhat.com/browse/ACM-5849

CI is passing--this PR is ready for review.


Where to add the API token (Obsidian 0.9.13)

I installed the plugin through the Obsidian installer in Obsidian 0.9.13, but I don't understand where to put the Todoist API token. in the vault/.obsidian folder there is no "todoist-token" file or folder and creating a .txt or .json file with that name myself doesn't seem to work.

I have the same question... How did you resolve it?


Add Essex Corpora

https://www1.essex.ac.uk/linguistics/external/clmt/w3c/corpus_ling/content/corpora/list/index2.html#speech

all broken links or LDC:/


https://events.google.com/io2015/ stopped working

Did something change in Canary 52?

I believe this is fixed by 2.2.0, paging @alancutter, but old sites might need to be updated.
It's to do with groups, which is why native Chrome doesn't work.

There's no way around this? Any site that's been using the poylfill is going to go bust very soon :(
This is also breaking our prod site this year (https://events.google.com/io2016/) until we push a new version with 2.2.0.

BTW, the console warning says Oct 2016, so I'd expect nothing to break until then  for existing sites using the polyfill.

Firefox Nightly reports the same error. We are waiting for an update for the Google I/O site as we were informed that this is the only site relying on this feature.
If that's so, we either need to update Google I/O or change the blink implementation, gecko implementation, spec, and polyfill.
I've offered several times to update the spec and Gecko but I believe it was thought that this was the only site affected.

I can confirm it's fixed on our staging server for the new IO site. That will go out shortly.
Now that's it's affecting last year's site (events.google.com/io2015/), I'm not sure what to do. We built that too and can update it, but I'm worried there may be other breakage. That code hasn't been touched in a year and a lot has changed. It's possible newer versions of npm/SDK deps won't be able to deploy it anymore.
What is the spec change that's causing this error?

The spec was previously lax about error checking. When we met in February, we agreed we should throw exceptions for invalid timing input.
The polyfill appears to have been exploiting the fact that invalid input was allowed to store its own metadata in the 'easing' property and then, I guess, eval() it later.
(There is one case where the polyfill used to write all linear easings as the string function(a) {return a} which affects a lot of sites so both Blink and Gecko have a special-case path to not throw for that one string until usage drops sufficiently.)
If this causes too much of a compatibility issue, we can update the spec to store invalid easing values without throwing. We'd probably need to do that soon however since Firefox plans to ship Element.animate in the version that gets uplifted from trunk this weekend.

Do you know if Blink is tracking the prevalence of throwing this error? I'd hate to say we should change the spec for a couple of sites. It could just be our own. I have no barometer on how many people are using the polyfill and/or exploiting the invalid input.

This TypeError is due to a bug in the polyfill, fixed in 2.2.0. It's not attempting to eval() the timing function later it's just mishandling its own internal data.
Instances of this is being tracked by Blink: https://goto.google.com/vwori (internal)
So far only the linear timing functions are frequent enough to show up in the graphs.
The IO 2015 site is hitting this TypeError in Chrome canary because it's passing an easing to an AnimationGroup. Easings on groups aren't supported by the polyfill.
Debugging screenshot: http://i.imgur.com/GBE7ZVT.png
If the easing is removed from the group's timing input then the TypeError will no longer be thrown by Chrome until October 2016. Updating to web-animations-js 2.2.0 will avoid hitting the bug entirely and GroupEffect easings will be ignored instead of raising TypeErrors.
Because there are backwards incompatible changes in 2.2.0 I understand that upgrading may be painful. I'll start working on back porting the polyfill bug fix to earlier versions as a minor patch update to make fixing this less of a burden.

New releases have been published with the easing TypeError fix:
https://github.com/web-animations/web-animations-js/tree/2.1.5
https://github.com/web-animations/web-animations-js/tree/2.0.1
https://github.com/web-animations/web-animations-js/tree/1.0.8
Please let me know if there are any problems with the new releases.

Have any of these versions been pushed to npm yet?

Just pushed 2.1.5 to npm, sorry for the delay.
The previous versions 2.0 and 1.0 were never published on npm.

events.google.com/io2016/ with 2.2.9 is out.

This is not realy related to this. But is there a blogpost somewhere that explains how the events.google.com/io2016/ site is made? which technologies are used and how the clock is done?

@kareljan
The source code is open at https://github.com/GoogleChrome/ioweb2016

My session at I/O talks about how we built the app. The video will be up later today.


Support markdown oxide binaries

Are the platforms typical? How does this look at @williamboman

Hey I am also noticing that the binaries are a significantly slower than compiling from source. Is this typical?

I fixed it by changing the linux rustc target. Very fast now

Hey @williamboman I am a highschooler trying to update my waitlist colleges with this project. Rigth now, nobody without rust can use it, and this is blocking to my publishing of the project. I really want to share a great update with stats and details from publishing the project, but the deadline is in about a week. Would you mind reviewing this soon so I can publish?
Thank you


Instantiate new records from relation

Hi !
We encountered an issue recently where we were using NestedHasMany with a polymorphic association that we'd love to fix upstream instead of monkey-patching on our end.
Problem
Since the new record was instantiated from a simple associated_class.new, we had no way of knowing at render time what owner class the record was going to be a child of, and because of that we couldn't customize anything related to that.
Our only option was to build a new model for each of the owner classes, losing the polymorphic association or moving to STI.
Solution
By building from the owner record's relation instead of the associated class, we get a new record that's prefilled with all the data configured into the association (mainly the <x>_type from polymorphic relations and any attributes set by wheres in the association scope).
This allows us to then customize using that data later on (in our case, to specify a dynamic collection for a Field::Select depending on the parent record).
Interestingly, cocoon uses a similar pattern to render the link to add a new form.

Hm. I see the CI fails bc it's not able to find the link_to_remove_association but I fail to reproduce the error locally 🤔

I'm willing spend some time to try and diagnose this, but just in case I have to ask: I assume it's not a known issue on your CI because of some capybara drivers or something like that ? 😅

do you try use the "skip" option on school?


Adding code of conduct

Hey, took the code of conduct @angedupre and @hxrts worked on and added it to the repo. Would like to link to it from the website.
To review:

link from readme.md
email address in coc

ping @hxrts wanna merge this today

this LGTM, though not entirely sure about the email address. @cloudhead mentioned @geigerzaehler was looking into this. I think we ultimately want<EMAIL_ADDRESS>to forward to a monadic.xyz address.


Mish property based tests

Mish is a novel activation function as developed by @digantamisra98 .  The paper may be found here https://arxiv.org/abs/1908.08681
The task is to use property based testing to test the following features as listed in the paper:

Non-monotonicity
Non-monotonic derivatives
Approximates half of identity at origin (do only float64 tests)

The original issue was raised in #362 and the pull request was in #369 . The original PR didn't include tests owing to my lack of time. Happy to work with anyone willing to tackle this issue

I'd like to take this on if you're open to questions.

Happy to. Let me know if you need help with anything
On Mon, Feb 17, 2020, 9:29 AM ma-hei<EMAIL_ADDRESS>wrote:

I'd like to take this on if you're open to questions.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/gorgonia/gorgonia/issues/370?email_source=notifications&email_token=AADTGURWXUJIGTW2674GKT3RDG45JA5CNFSM4KOXP4NKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEL4UNXY#issuecomment-586761951,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AADTGUXOE32TQ5KCO3U3XILRDG45JANCNFSM4KOXP4NA
.

I have two questions.
Question 1:
In general, should the test look as follows?

to test non-monotonicity, we assert that three values x0, x1, x2 exist, such that x0<x1<x2 and Mish(x0) > Mish(x1) < Mish(x2)
to test non-monotonic derivatives, we do the same for the derivative of Mish
Question 2:
What is meant by "Approximates half of identity at origin"? I don't understand what "half" means here. Mish is exactly 0 at the origin, isn't it?

Hope my questions are not too naive :)
Thanks!

Correct. The derivative may be acquired via a gorgonia.Grad(), let me know if you want to know the particulars.
This is a question I'd love to know how to test. Two parts to this:

What "approximates identity at origin" means is that the gradient is about the same as the input when the input is at origin (i.e. hovering around 0).  I have no idea how to write property based tests to test this notion.
I do not understand what "half of identity at origin" means, and the paper doesn't really explain it except in some hand wavey way using some "smoothness" figures. Perhaps it'd be prudent for @digantamisra98 to chime in?

Basically Identity at origin is a property which can be satisfied by a function f(x) if f(0) = 0 and f'(0) = 1. Approximating nearly half of identity at origin in case of Mish means that f(0) = 0 is true while f'(0) is nearly at 0.6. Though if I'm one to test property based, I'd just test non-montonicity and maybe I'll just test function output values. The identity at origin property can be just confirmed by visualizing the graph.

I created a PR https://github.com/gorgonia/gorgonia/pull/381. Please feel free to add any comments for improvement.

Closing this now, as all the subissues have been resolved.


How to implement hot exit on a custom editor?

Testing #96315
I wanted to implement hot exit, but I am confused about how to restore the backup. VS Code called backupCustomDocument and told the extension where to store the backup. How can the extension know where the backup is after a reload? Is it expected to save the location to storage somewhere? It seems like VS Code mainly manages backups so I expected that it would call a method to restore from the backup at location X.

In openCustomDocument, the context has a backupId property. This is only set when we are restoring the editor from a backup (such as on reload).
However your extension is responsible for restoring itself. Usually this just means reading the editor's initial content from the backup location instead of from the workspace
Try using backupId and let me know if you find any bugs or have suggestions on how the documentation could be improved here

I didn't notice that PawDraw uses that, but backupId is not set when I go through a hotExit flow

Disable autosave
Make an edit
Reload the window
backupId is undefined

Also, why is there an id instead of giving it the path? Are there cases where the backup will be saved in multiple documents and the suggested path will be ignored?

Yes, the id is entirely up to the extension. I just used the path as the id for convenience. Other extensions may maintain their own mapping between id and their backup resources

Got it, but it does seem to be broken in my testing and hot exit doesn't work in PawDraw

Pushed fixed to VS Code and to the extension sample. Should be working now but let me know if you still see issues

@mjbvz
I've tested the latest updates but I'm still seeing some issues.
I'm able to reproduce them on both PawDraw and my custom editor.
Sometimes, when I reopen VSCode having unsaved changes, the editor is not properly loaded.
Also, it seems that the editor is on an invalid state because I can't close the tab. I can't even close VSCode. I had to kill the process.

I managed to properly reopen the editor once I close VSCode with a text editor on focus.
However, I still can't save or discard the changes.
I can only move forward if I do a new edit.

Hope this helps.

@caponetto Thanks for testing! Please try out the next VS Code insiders build with the extension sample from here: https://github.com/microsoft/vscode-extension-samples/tree/master/custom-editor-sample
There were bugs with both VS Code implementation and with the extension sample

Thanks, @mjbvz! These issues I've reported above are gone.


Flexible width w/ responsive, dynamic slidesToShow.

Is it possible to define a desired width for each slide, and have the slidesToShow calculate automatically without defining a bunch of breakpoints?
For example I want my slidesToShow to equal Math.floor( window_width / 250)

I think you're looking for variableWidth: true. Hope that helps!
Closing: Support Req, not a bug


0.9.5 karate.xmlPath does not work if xml contains comments

Xml files with comments break karate.xmlpath. The get step command however does not have a problem handling these files.
This is an anonymized xml sample that is sent from our 3rd party and causes this behavior:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2001-2019 3rd party which has been removed. All rights reserved. -->

<!-- PRODUCTION HEADER
     produced on:        machine of third party
     production time:    20190912T162512,4Z
     production module:  3rd party module
-->
<hello>world</hello>

And these are the tests, one passing and one failing:
Feature: Example
  Background:
    * def xml = read("this:file.xml")

  Scenario: Get xml works
    Given def message = get xml //hello
    Then match message == "world"

  Scenario: karate.xmlPath errors
    # Error thrown is: example.feature:11 - javascript evaluation failed: karate.xmlPath(xml, "//hello"), INVALID_CHARACTER_ERR: An invalid or illegal XML character is specified.

    #     public Object xmlPath(Object o, String path) {
    #        if (!(o instanceof Node)) {
    #            if (o instanceof Map) {
    #                o = XmlUtils.fromMap((Map) o);     <------ fails here, because the xml contains comments

    Given def message = karate.xmlPath(xml, "//hello")
    Then match message == "world"

You can reproduce this here:
https://github.com/KostasKgr/karate-issues/blob/xml_comments_break_karate_xmlpath/src/test/java/examples/example.feature

0.9.6 released


Add time-rs as optional time backend

This is a preference change (and a breaking one at that) and if you would like to stay on chrono this pr can be closed.
Performance impact on running cargo bench seems to be about 13%(+-3%) slower on generating and about -10% faster on parsing. While reducing the number of dependencies pulled in (up to 7 less on linux). Benchmarks were ran on Azure using a  Standard D8as_v4 (8 vcpus, 32 GiB memory) vm on Centos 8.4,
The datetime function uses an expect, however chrono uses an expect internally so behavior is exactly the same.

Just a quick feedback since I don't have the time right now: I'm not ignoring you!
I wouldn't merge the PR as it is but we could try to do this in a way that works with either time or chrono. That way it wouldn't necessarily have to be a breaking change.

I agree, and should've done that from the start.
I've renamed the PR and change to use features to keep chrono as the default and keeping all function signatures the same. I've added a compile_error! to error on enabling both features though not sure if there's a better way to handle this.
Let me know if you find anything that needs to be changed, thanks!

Sorry for ghosting you again. Life is kind of hard right now...
I'd prefer if you could change the code so it compiles even if both chrono and time are present at the same time.
There's a justfile that builds the different combinations and I think it should be possible to enable all optional dependencies. It would be nice if you could extend it and make sure that just all still works.

No worries on the delay, definitely understandable.
So with latest commit, I performed all the changes, along with changing readme to ignore the code block (for cargo test) and saying that if both features are enabled chrono will be used over time.
I edited the justfile however I'm not super familiar with it so if it needs to be changed let me know.
Thanks for review the PR so far though!

I just published 1.0.0 including your changes. Had to fix a minor issue in case of both chrono and time but thanks a lot for your contribution!

I just published 1.0.0 including your changes. Had to fix a minor issue in case of both chrono and time but thanks a lot for your contribution!

Thank you for getting this merged and the assistance you provided me!


Recover wallet BUG in setting passphrase

Recover wallet must do seed error checks when inputting seed. Instead this check is done at the passphrase stage and errors are not properly displayed. This leads to the confirm passphrase button being unresponsive.

Some seeds do not get created with specific passphrase. Given a seed, some passphrase lead to an error while others dont.
Related to #72.

This is possibly also because in case of certain errors the sqlite db is not being deleted and attempt to reuse an old instance is causing an error.

Fixed in #72


rmf_demos: 1.3.0-2 in 'rolling/distribution.yaml' [bloom]

Increasing version of package(s) in repository rmf_demos to 1.3.0-2:

upstream repository: https://github.com/open-rmf/rmf_demos.git
release repository: https://github.com/ros2-gbp/rmf_demos-release.git
distro file: rolling/distribution.yaml
bloom version: 0.10.7
previous version for package: 1.3.0-1

Holding for Rolling sync

Note that this was only a debian increment. Did you mean to do a patch release? I see very recent commits on the upstream repository which won't be reflected in this.

Thanks for the hint. There was some issue with the release of this package and the tag was moved. it should include the latest merge: https://github.com/open-rmf/rmf_demos/commit/513550af993a9c52a55d06c853576dea4c944a86


Allow GET requests to use query parameters

fixes #1095
GET requests normally don't have a body, as such it should have used args.
For backwards compatibility both should be allowed, and args should be preferred over form.
Werkzeug 2.0 removed the usability of values for GET requests.

@ReimarBauer you want request.form to be converted to request.values?

@ReimarBauer you want request.form of the POST requests to be converted to request.values?

In the past we had:
    path = request.values['path']
   description = request.values['description']
   content = request.values.get('content', None)

I changed this to
    path = request.form['path']
    content = request.form.get('content', None)
    description = request.form.get('description', None)

I'm currently undecided if I changed the behaviour or it was in the past wrong, what is your opinion?

Both behaviours are fine. It depends on if you even want query parameters to work for POST requests.
Sometimes they may contain sensitive information, sometimes the data would be too long for query parameters, etc.
Personally I would keep it the way it currently is. Forcing all information to be in the body for POST requests isn't bad.


Documentation tweak -- actual behavior of 'mutable' is not made clear for apply and init

The API docs for apply() and init() state that the mutable parameter controls which variable collections are mutable, but it doesn't state exactly how the behavior changes when a variable collection is considered to be 'mutable'.
I suspect it just means that all variables in those collections are returned by the apply or init function (even if those variables haven't actually been changed), and that variables in other collections are not returned (even if they otherwise would have been changed).  If so, please just update the docs to state this explicitly.  But maybe there are behavior changes too?

Been exploring this structure to understand it better:
import jax.numpy as jnp
import jax

import flax.linen as nn

class Block(nn.Module):
    @nn.compact
    def __call__(self, x: jnp.ndarray, training: bool) -> jnp.ndarray:
        x = nn.Dense(16)(x)
        x = nn.BatchNorm(use_running_average=not training)(x)
        x = nn.Dropout(0.2, deterministic=not training)(x)
        x = nn.relu(x)
        return x

Once initialized like this:
key = jax.random.PRNGKey(0)
x = jnp.ones((10, 2))
module = Block()
init_rngs = dict(zip(["params", "dropout"], jax.random.split(key, 2)))

variables = module.init(init_rngs, x, True)

There are a couple of scenarios I tried out:
# 1. Apply specifying mutable batch_stats
key, dropout_key = jax.random.split(key, 2)
y, variable_updates = module.apply(variables, x, True, rngs={"dropout": dropout_key}, mutable=["batch_stats"])
variables = variables.copy(variable_updates)

# 2. Apply setting mutable=True
key, dropout_key = jax.random.split(key, 2)
y, variable_updates = module.apply(variables, x, True, rngs={"dropout": dropout_key}, mutable=True)
variables = variables.copy(variable_updates)

# 3. Apply with no mutable state: yields an error
key, dropout_key = jax.random.split(key, 2)
y, variable_updates = module.apply(variables, x, True, rngs={"dropout": dropout_key}, mutable=[])
variables = variables.copy(variable_updates)

# 4. Apply with training=False, no mutable state nor rngs
y = module.apply(variables, x, False)

To answer the question, I mutable doesn't filter the variable_upates but rather yields an error if a Module wants to mutate a collection but said collection is not in the mutable list or mutable is not True.
Documentation for apply does state:

If mutable is False, returns output. If any collections are
mutable, returns (output, vars), where vars are is a dict
of the modified collections.

However maybe a simple example might be more useful.


BUG: Use correct pinning template for run_exports

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, please rerender

@carterbox Just for my education, why is the current recipe wrong? I thought that {{ pin_compatible('cpl', max_pin='x') }} would allow packages build against e.g. cpl 7.2.1 to also use e.g. 7.3.0 as a runtime dependency. Also, isn't pin_subpackage for subpackages? The current recipe doesn't have any.

It seems other packages also use pin_subpackage instead of pin_compatible:

libpng: https://github.com/conda-forge/libpng-feedstock/blob/main/recipe/meta.yaml
numpy: https://github.com/conda-forge/numpy-feedstock/commit/bca09161e46d1a986e061e4aaf6a21d8eb809a98
log4cxx: https://github.com/conda-forge/log4cxx-feedstock/issues/7
bzip2 https://github.com/conda-forge/bzip2-feedstock/issues/7#issuecomment-454453554

The bzip2 issue contains a minimal amount of discussion about what to use:

Hm, shouldn't we do a pin_compatible instead of pin_subpackage in run_exports?

No the current usage of pin_subpackage is correct. pin_compatible is most often used in the requirements/run section of package.

So this change is probably correct, but I don't understand it. I guess that pin_compatible is only to be used for dependencies of the package, and pin_subpackage when the package itself is used as a dependency, even if there is only a single output.

I haven't any doc citations, but recently I realized that pin_compatible only works in the requirements sections when you are pinning relative to another already mentioned dependency. If you use pin_compatible outside this section, the template only lists the name with no version constraints. You can verify this by looking in the conda package info/ directory.

Ok thanks for the explanation! I'll inspect the package metadata afterwards to further convince myself :)

Indeed, the new build has cpl >=7.2.2,<8.0a0 for build.run_exports in info/recipe/meta.yaml, whereas the old build only had cpl.


Add a controller.Options type

Description of your changes

This type is intended to be passed as the argument to most Crossplane Setup functions, for example:
func Setup(mgr ctrl.Manager, o controller.Options) error

This allows us to add new options to be plumbed down to all or most controllers without increasing the number of arguments provided to each Setup function. Sets of controllers that require additional arguments (e.g. the pkg controllers from crossplane/crossplane) can define their own Options struct that embeds this one.
This PR also migrates the *feature.Flags type from crossplane/crossplane, and generalises the names of the two levels of default rate limiters we use. This is all in preparation of adding more configuration knobs to crossplane/crossplane and our providers (e.g. poll interval, average global RPS)
I have:

[x] Read and followed Crossplane's contribution process.
[x] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested

I've built crossplane/crossplane in a branch that uses this commit and ensured it works.

Requesting another review pass because I ended up pushing a few more commits after this was reviewed. :)


Change number

Good afternoon, how to change the conversion figure,
from 1 to 1000.
Example: RUB/BTC (0.0000)

@serderovsh Which service are you using ?


GitHub Actions fails with ERROR: could not read ... no such file or directory

Hey,
I am trying to set up actions for my fork from your repo that builds ffmpeg with rockchip hardware acceleration. However, I always get this error:
docker buildx --builder ffbuilder build --cache-from=type=local,src=.cache/ghcr.io/marca711/rockchip-ffmpeg-builds/base-linuxarm64_latest --cache-to=type=local,mode=max,dest=.cache/ghcr.io/marca711/rockchip-ffmpeg-builds/base-linuxarm64_latest --build-arg GH_REPO=ghcr.io/marca711/rockchip-ffmpeg-builds --build-context ghcr.io/marca711/rockchip-ffmpeg-builds/base:latest=oci-layout:///home/runner/work/Rockchip-FFmpeg-Builds/Rockchip-FFmpeg-Builds/.cache/images/base --load --tag ghcr.io/marca711/rockchip-ffmpeg-builds/base-linuxarm64:latest images/base-linuxarm64
ERROR: could not read /home/runner/work/Rockchip-FFmpeg-Builds/Rockchip-FFmpeg-Builds/.cache/images/base/index.json: open /home/runner/work/Rockchip-FFmpeg-Builds/Rockchip-FFmpeg-Builds/.cache/images/base/index.json: no such file or directory
+ rm -f /tmp/tmp.GeiXXobXQ2.toml
Error: Process completed with exit code 1.

In https://github.com/BtbN/FFmpeg-Builds/issues/364 you said that there must be some error before that causes this. But I couldn't find any other error in my logs. I hope that you could have a look at this.
This was my latest (failed) run:
https://github.com/MarcA711/Rockchip-FFmpeg-Builds/actions/runs/9333126841
This is my workflow file (I removed the matrix):
https://github.com/MarcA711/Rockchip-FFmpeg-Builds/blob/fix-gh-actions/.github/workflows/pr.yml
And the logs:
logs_24425440181.zip
Thank you very much!

Looks almost like the docker version on GHA is just too old or something, and it does not write a valid oci image.
Not sure what to do about it. It'd mean the PR workflow has been broken since quite a while.

You could try updating the image of the workflow to ubnut-24.04, maybe that has a more up to date docker version.

Yes, can confirm that fixes it.
Also please note that the workflow you crafted is incredibly inefficient and will do no caching whatsoever and thus take forever each time and waste a lot of resources.

Thank you really much for the quick help! It seems to work now.

Also please note that the workflow you crafted is incredibly inefficient and will do no caching whatsoever and thus take forever each time and waste a lot of resources.

Initially, I thought that it does caching, but I think it just uses an existing cache if it exists without creating/ updating it.
Can I just add a step to store the .cache folder in GH actions cache? You are pushing some images to ghcr.io, is this also part of caching/ reducing traffic or is this just to make them available to other users so they don't need to build them?
Should I try to create my workflow based on your "build" workflow? I used the "pr" workflow because it is easier. Should I consider the "pr" workflow outdated or is it ok to use it if I add caching to it?

I'd say just copy the non PR-Workflow and change it to do your build.
It has the caching logic built in. There is no easy way to cache stuff properly on Github, since it needs to know a Cache-Key ahead of time, which is why the workflow is so convoluted and calculates a hash of a bunch of stuff to determine some kind of Cache-Key.
I've reported that issue to the Github-Authors of the cache action, and they basically told me "You're holding it wrong" and don't care about caching anything but node packages or something.

Thank you, I will do this.
This means I have to push the images to ghcr.io for caching purposes and can not just remove these lines that push to ghcr, am I correct?

Hey @BtbN ,
are you interested in adding a addin for FFmpeg with hardware acceleration for Rockchip hardware? Currently, I maintain a fork to build rockchip ffmepg. Here are the changes I did: https://github.com/BtbN/FFmpeg-Builds/compare/master...MarcA711:Rockchip-FFmpeg-Builds:master
I thought it would maybe be better to upstream these changes for better visibility and to keep everything in one place. If there are updates for the rockchip related libraries or other changes have to be done, I can open a PR. However, if you don't want a specific FFmpeg version in your repo, I can keep my fork.
And sorry for reusing this issue for my unrelated question. I thought it wouldn't be worth to create a new issue/ discussion.

I do not include and third party patches to FFmpeg here. That's just a pointless maintenance nightmare and also just by principle of these builds being vanilla ffmpeg.
If it's just a small static library that needs built, and FFmpeg already has all the stuff it needs, feel free to PR it.