Pre lollipop problems

Hi, first let me say that I love your library but i'm having problems, even with your sample app your library doesn't seem to work on pre lollipop devices.

@sedestrian Could you please describe what the problem is exactly? I tested it on emulators as much as I could and didn't encounter any issues. What Android version are you using? What components are causing trouble? Thanks!

Well i'm using mainly 3 testing devices and some emulators, and since my implementation wasn't working on pre lollipop devices i thought that i was doing something wrong, so i downloaded your sample.apk and installed it on various android devices and it worked only on the ones with lollipop, the other devices were API v19, and v16

also, when setting up the background dimming there's an error that says that a resource named fab_elevation is missing from the library

@sedestrian I wasn't aware of those issues. I'll test the sample app on those emulators as soon as I can, but I'm currently a bit short in time. There shouldn't be anything on the theoretical side that should hinder the app from working on pre-Lollipop devices. I even tested on API 7. Anyway, thanks for reporting it.

You're welcome, hope to be able to use your library again soon :)

@sedestrian Can you check whether the latest version works for you? I changed everything to be compatible with the new 23.1.0 support library version. (See Issue #3)

Hi, it's me again, i'm having some trouble resolving your new 0.1.2 library, android studio doesn't find it (yes, i have added maven { url "https://jitpack.io" } under repositories)

@sedestrian You were right. There was an issue with JitPack that I just resolved. Should work fine now. Thanks for reporting it!

Ok, so I've installed your new 0.1.2 sample apk on my 4.4.4 galaxy S first gen and it still crashes as soon as I open it, not sure what could be the issue but on my app the crash when I use your library is Array out of bounds on the line where I inflate the floating action menu, maybe knowing this will help

@sedestrian I'll see what I can do. Thanks for helping me and thanks for your patience.

I'm happy as long as I can help :)

Update, this time was my bad for the floating action menu, for some weird reason i crashed it, still need to understand why exactly, but still the sample apk crashes, maybe it's not updated with 0.1.2?

@sedestrian Just a note, I've finally got the emulator working and could reproduce the issue. I'm currently working on resolving it.

@sedestrian Which components were you using? I found an issue with TypefaceCompat that crashed the sample, but the FloatingActionMenu works fine on my API 19 emulator.

Yes, as I wrote in my last comment this time the FAM crash was my fault

@sedestrian So the FloatingActionMenu works for you and it was just the sample app crashing? Thanks!

@sedestrian If you haven't found any other issues I'll close this one. If you could take a quick look at the sample.apk on your devices that would be very nice. Emulators are good for testing, but sometimes they just don't reflect the real device. Thanks again for your help!

Yes the app now works with my v19 test device, it does have a blue background under some elements like account picture etc.. but surely works :)

@sedestrian Ok, thanks for checking. I'll work on the blue background and release a fix soon.


Deleting a room should make its text chat window go away

[x] allow editing posts on chats
[ ] deleting a room should make its text chat window go away
[x] make chat windows resizeable (and reconsider how they are laid out -- e.g., should they be on the bottom of the screen, or should they share space in the right-hand sidebar?)

FYI, it was always possible (from day 1 of chat) to edit your own chat messages, and for moderators to edit any.

I'll open a fresh issue for the bit of this that's not done yet


GTKW files with signal groups

For debugging complex circuits, it's useful to have the signal traces grouped according to their function. The popular gtkwave tool supports this, as does the GTKWSave class from the vcd package used by Amaranth to export VCD files. All that remains is to connect this together.
I have implemented an extension to Amaranth's _VCDWriter which does just that. The idea is that the traces argument can be passed other things than lists of signals. My implementation currently accepts the following as traces:

Signals, which work as before.
Iterables (e.g. lists) of traces, which shows them in gtkwave one after the other, like before.
Mappings (e.g. dicts) of traces, which create a new group of traces for each item in the mapping,
Amaranth Records, which group the fields of the record.

There is no support in the current implementation for the recently added lib.data classes from RFC 1, but it can be easily added.
Are you interested in merging this functionality to Amaranth?

Let's discuss improvements to VCD and GTKW writing functionality after the next release.

I'm interested in expanding traces= handling with the following behavior:

dict: creates a group per dict key.
list or tuple: expands into individual elements recursively.
data.View: expands into a group with individual parts, unless a single field, in which case the group is omitted.
MemoryData: expands into all rows of the memory (requires #1221).
wiring interface objects: expands into a group with individual signals recursively.

Note that I've specified dict and list above because I consider the syntax of tracing to be a mini-DSL where I ascribe new meaning to, specifically, the Python {} and []/() syntax. This allows flexibility for later expansion with other objects, which may also be e.g. iterables.
Is this something you're interested in implementing? I'd be happy to merge that in 0.5, but otherwise I may have to bump it to 0.6.

I could port the implementation of this feature from Coreblocks, adapting the behavior to stated requirements.

Sounds good to me.

It looks like there is a regression on #790: I can't get view field traces on main. I will try to do a bisect later.

I bisected the regression to commit 2bf1b4dafc3a5860e532ae8dac31859c3f9c7089.

Yeah, I see the problem, I'm going to do a quick fix soon

Fixed in #1237.


add Total + Retention

Signed-off-by: Issif<EMAIL_ADDRESS>
What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area tests

What this PR does / why we need it:
It adds two new information:

Total: number of events collected since UI is up
Retention: how many events are kept in table

Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign issif after the PR has been reviewed.
You can assign the PR to them by writing /assign @issif in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: fjogeleit
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [fjogeleit]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: b913fe5e3f05de32dbcf645c393a57480c8a3e01


HDDS-10066. Consolidate and test the Ratis write path for prefix ACL

What changes were proposed in this pull request?
While working on Prefix ACL, it's found that there are very few tests on Prefix ACL OM HA request and response flow. We need to add more tests for prefix ACL.
There are also identified possible bugs that might have be a problem in the future. They are:

It's found that OmPrefixInfo and PersistedPrefixInfo do not store and load the updateID and the objectID from DB correctly

We need to add the object ID and updateID in the prefix codec process.

UpdateID stored in the OmPrefixInfo on the in-memory prefix tree are not updated

In OMPrefixAclRequest, the setUpdateId is called after the we apply the ACL operation to the prefix tree (through PrefixManager), this causes OmPrefixInfo update ID to be different than the one in the OM DB
We need set the update ID to OmPrefixInfo before we apply the ACL operation to the prefix tree, so that it will be reflected as well.

PrefixManager only updates the OmPrefixInfo in the prefix tree for ACL operations that changes underlying ACLs

If there is no changes in the underlying ACL (e.g. adding existing ACL), the prefix tree will not be updated
However, under the OM HA write flow, every request will update the updateID
Therefore, we need to update the prefix tree regardless whether the ACL operation results in ACL change

Add prefix object validation in OMPrefixAclRequest#validateAndUpdateCache

This will fix the issue in HDDS-8157 which was caused by HDDS-6964 (https://github.com/apache/ozone/pull/3653)
The exception assertion will be added back to TestKeyManagerImpl#testInvalidPrefixAcl

What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-10066
How was this patch tested?
Add more unit tests for prefix ACL write flow.
Clean CI run: https://github.com/ivandika3/ozone/actions/runs/7444897556

@ChenSammi @whbing @Tejaskriya @GeorgeJahad Please help to review when convenient.

@DaveTeng0 can you please take a look?

@Tejaskriya can you please also review?

Thanks @ivandika3 for updating the patch, @Tejaskriya, @whbing for the review.

Thank you for the reviews @whbing @Tejaskriya @adoroszlai


Quick question

So instead of using nix-community/raspberry-pi-nix I could use this?

Hi @devinlittle. Yes, you absolutely could

Hi, @nvmd,
Thank you for your response and for clarifying! I’m still new to NixOS and flakes, so I apologize if this is a basic question. Would it be possible to provide an example of how to use Disko for setting up the partitions and configuring the boot process in this flake?
I really appreciate your time and help as I learn. Let me know if there are any specific resources I should check out!
Thank you!

Absolutely no problem, you're welcome. Yes, this repo currently lacks an example of the minimal but complete system configuration. Good news is that I was planning to finish one in the coming days. I'll let you know.
There's no one-stop source of information, unfortunately, you'll likely need to look into a multitude to compose your solution. At least I don't remember one from the top of my head.
NixOS wiki is one of the best, though it's page on ARM and RaspberryPi is, for my taste, too complicated right now, describing solutions with too much manual labor, etc.


UC | changes in deploy.sh for overcast

export consul_discoverytoken so overcast can get it
Added variable ping_timeout with default 1200 secs, this allow us to set
different timeout value for different stacks

please test this

Test FAILed

please test overcloud

please test overcloud

please test overcloud

please test overcloud


feat: Write up documentation on account roles and what they do

e.g. what is the difference between an app "owner" and and "editor" (e.g. collaborator).
Is it possible to restrict the ability to publish patches to certain accounts?

See also https://github.com/shorebirdtech/shorebird/issues/1337 and https://github.com/shorebirdtech/docs/issues/152


Possible bug with "layer_indicator = 1"

First: thank you for this wonderful script! It solved my wish of swapping control, alt, win, and sysrq keys brilliantly, and the "oneshot" action works better than the "sticky keys" option in KDE, which is buggy.
I tried adding
[global] layer_indicator = 1
in the /etc/keyd/default.conf file. This is useful with the toggling behaviour of the modifiers. It works as it should. However, whenever layer_indicator is turned on, I experience spurious repeated input from time to time, for example a sudden series of dots "............." which goes on until I press ESC; this happened after pressing ")". On another occasion it was a series of semicolons ";;;;;;;;".
I've tried investigating and searching for some activation patterns, but so far I didn't found any, sorry. The only thing I'm sure of is that this happens when layer_indicator is enabled. Let me know if I can do any other testing to give more useful information.
Cheers!

I found out it is not the layer_indicator causing this, but the use of oneshot action. Closing this and opening a different one.


Feature/auth

Feature: Only allow editors and owners of the project to access Datalab.
Tests done:

With user entity in Datastore of the project, the user is able to access.
Without user entity, the user is redirected to deployer page, where he/she can sign in, and then redirected back.
Works in both locally and in cloud.

Added my comments on this.


SQL mode COPY includes internal columns, produces columns in nondiscoverable order

scope=# copy "User" to stdout;
27995	898	1149	0	1149	(0,1)	Alice	f5ab708e-1534-11ee-8439-6fca9e7c1d0c	ecb718b1-1534-11ee-b27d-ab578c0a5e0c	f5ab7086-1534-11ee-8439-973fa5acc1b4
...

I don't think we should include ctid and friends. They don't get included when running copy on normal postgres.
Additionally, the order that the columns are reported out does not correspond to the ordinal_positions reported when querying information_schema/pg_catalog
It also includes __type__, while information_schema omits it. (It does so deliberately, but I think it should probably start including it?).
I think that I am indifferent to whether the column order produced by COPY is changed to match ordinal_position or vice-versa.
(Assigning to Victor because I know he's looking at another SQL thing right now, but you should feel free to kick it over to @aljazerzen if you think that makes more sense)

https://github.com/edgedb/edgedb/pull/5715 contains a test of COPY that needed to be updated when a column got moved around. A good test for this issue would be to actually query information_schema to figure out what the correct index is.


Adding AES192 and AES256

Adding new keys for 192 and 256 bits, only one length is available at a time depending on a compile time definition of AES128/AES192/AES256

AES128 compiles with 128b keys support
AES192 compiles with 192b keys support
AES256 compiles with 256b keys support

This PR is dynamite! I've been wanting to refactor the base code so that the block-sizes could vary.
Thank you for taking the effort to updating this project to support the two larger block-size.
Also I'm happy to see that you've kept the code in the same style as originally.

BTW: I see that you've renamed your repo. I totally get the reason for that, but I won't though, because I fear it may spoil links to the project-page somewhere on the interwebz - cause it will, won't it? Just giving it a thought after reviewing your changes.

Renaming the repo won't affect who has forked with the original name,
however, if you want to keep your name, i am good with it!!
Thank you
On Fri, Jul 7, 2017 at 17:03 kokke<EMAIL_ADDRESS>wrote:

BTW: I see that you've renamed your repo. I totally get the reason for
that, but I won't though, because I fear it may spoil links to the
project-page somewhere on the interwebz - cause it will, won't it? Just
giving it a thought after reviewing your changes.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/kokke/tiny-AES128-C/pull/58#issuecomment-313819231,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAngjfUkNomnExuwegAJojFxt47xmer5ks5sLsdUgaJpZM4ORfop
.

--
Sent from iPhone

Just so you now: If you rename the repository, nothing will break. As long as you don't create a new repository under this name, GitHub will automatically redirect users to the new name: https://help.github.com/articles/renaming-a-repository/
I tried this out and it works, for both the website and git clone (https and ssh). (If you want to test it out, I can give the the old link to my project)

Oh, if renaming doesn't break any links, I will consider it :)
Thanks for pointing it out @Skycoder42 and @bricke


yosys should not be built with debug flags

Describe the bug
According to https://github.com/YosysHQ/yosys/blob/master/Makefile the default value for ENABLE_NDEBUG is being used. Which produces unoptimized output with debug symbols and verbose logging. It also causes SymbiFlow/symbiflow-examples#120 due to some asserts being too strict.
To Reproduce
Add https://github.com/CajuM/nur-packages/tree/up as an overlay and try to build https://github.com/SymbiFlow/symbiflow-examples/tree/master/xc7/counter_test
I use the following shell.nix:
{ pkgs ? import <nixpkgs> { } }:

let
  mySymbiflow-arch-defs = with pkgs; symbiflow-arch-defs {
    devices = [ "xc7a100t" ];
  };

  arty100TEnv = with pkgs; stdenv.mkDerivation {
    name = "arty100t-env";
    nativeBuildInputs = [
      python3Packages.xc-fasm
      mySymbiflow-arch-defs
      prjxray-db
      prjxray-tools
      vtr
      yosys
      symbiflow-yosys-plugins
      xc3sprog
    ];
  };

in

arty100TEnv

Expected behavior
The build produces optimized output, the debug symbols may still be of use. And if the asserts are unneeded, they should not be triggered.
Additional context
I'm currently trying to update symbiflow in my nur-packages. And I'm stuck because of SymbiFlow/symbiflow-examples#120
Notify maintainers
@thoughtpolice
@VShell
@emilazy
Maintainer information:
attribute:
  - yosys

As a Yosys maintainer I would advise against disabling assertions, since this makes miscompilations off the beaten path significantly more likely. This is somewhat similar to the situation in LLVM, except that LLVM is routinely tested on a much larger set of inputs and is proportionally safer to run with assertions off (provided that the frontend emits legal code). Symbiflow-related issues that trigger assertion failures should be fixed in Symbiflow.
The fact that the optimization level is currently tied to presence of assertions is unfortunate but orthogonal.


How to use mongodb interface?

Use this interface https://github.com/xen/sanic_session/blob/master/sanic_session/mongodb.py

Use this interface https://github.com/xen/sanic_session/blob/master/sanic_session/mongodb.py


Can I use this view with GPU Image library?

If yes then how can used it with GPU Image libray i.e. https://github.com/CyberAgent/android-gpuimage
because I can't able to store images with stickers using this library. please share if you have any possible solution.

The StickerView is a FrameLayout.You can use save() method to save an
image, but the size of image is only the view's size.
2017年1月3日 下午7:23，"supriya456"<EMAIL_ADDRESS>
If yes then how can used it with GPU Image libray i.e.
https://github.com/CyberAgent/android-gpuimage
because I can't able to store images with stickers using this library.
please share if you have any possible solution.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/wuapnjie/StickerView/issues/12, or mute the thread
https://github.com/notifications/unsubscribe-auth/AKY_wniqzFSyt44vZH2zH6MaS-e9b1O9ks5rOi-egaJpZM4LZiIL
.

Yes, I can able to store image but it shows blank image.
Please refer :- https://d.pr/zbke I have used this layout after that output is this one https://d.pr/12Qxt
It always showing me blank so can you please help me out from here!

Ok.I will check it and fix it if I can.
2017年1月3日 下午8:32，"supriya456"<EMAIL_ADDRESS>Yes, I can able to store image but it shows blank image.
Please refer :- https://d.pr/zbke I have used this layout after that output
is this one https://d.pr/12Qxt
It always showing me blank so can you please help me out from here!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/wuapnjie/StickerView/issues/12#issuecomment-270104777,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKY_wsKhuM8vOR69BGF3K487KAFCigswks5rOj_ZgaJpZM4LZiIL
.

Same issue here. Would be wonderful if Stickers could be applied over SurfaceView and be used with camera.

@supriya456  Any luck with combining these two libraries?
@wuapnjie maybe some advice how to achieve this?

Sorry. Maybe you can switch two steps to edit image. Currently i am not familiar with GPUImage and SurfaceView.

@supriya456 you can try like it:
  GPUImage gpuImage = new GPUImage(context);     gpuImage.setFilter(filter);         Bitmap pvBitmap = gpuImage.getBitmapWithFilterApplied(currentBitmap);         mGPUImageView.setImageBitmap(pvBitmap);
mGPUImageView is an Imageview type.


When calling the VideoWrite.write method,  Segmentation fault occurred

@skvark @native-api
This is my code.
import os
import cv2
from vidgear.gears import WriteGear
from concurrent.futures import ThreadPoolExecutor

# init variable
w1, h1, w2, h2 = 1920, 1080, 1920, 1080
fps1, fps2 = 28, 18

def cv_init(channel):
    cap = cv2.VideoCapture(channel)

    # ---------- create avi video out --------------
    code = cv2.VideoWriter_fourcc('X', 'V', 'I', 'D')
    out_avi = cv2.VideoWriter(os.path.join('video','original.avi'), code, 25, (w1, h1), True)
    detection_avi_out = cv2.VideoWriter(os.path.join('video','detection.avi'), code, fps2, (w2, h2), True)

    # ---------- create h264 of mp4 video out ---------------
    output_params = {"-vcodec": "libx264", "-input_framerate": str(fps1), "-crf":28, "-preset":"ultrafast", "-tune":"zerolatency"}
    detection_output_params = {"-vcodec": "libx264", "-input_framerate": str(fps2), "-crf":28, "-preset":"ultrafast", "-tune":"zerolatency"}
    out = WriteGear(output_filename=os.path.join('video', 'original.mp4'),
                compression_mode=True,
                **output_params)
    detection_out = WriteGear(output_filename=os.path.join('video', 'detection.mp4'),
                          compression_mode=True,
                          **detection_output_params)

    return cap, out, detection_out, out_avi, detection_avi_out

def write_video(out, image):

    out.write(image)

if __name__ == '__main__':

    cap, out, detection_out, out_avi, detection_avi_out = cv_init('{{video channel}}')
    # create thread pool
    pool = ThreadPoolExecutor(max_workers=1500)
    while cap.isOpened():

        ret, frame = cap.read()

        # relevant algorithms processing for pictures.....
        # pool.submit(compute_image, frame)

        # deep learning detection target
        # pool.submit(detection, frame)

        pool.submit(write_video, out, frame)
        pool.submit(write_video, out_avi, frame)

        pool.submit(write_video, detection_out, frame)
        pool.submit(write_video, detection_avi_out, frame)

Allow me to explain this function code:
According to the needs of Party A, I need to create four video output objects to save the original image and the image after deep learning recognition, and video formats require both AVI and mp4.
As the latency requirement was minimized, I had to use thread pool to optimize processing speed.
Therefore, in the "write_video" function, the same image is written twice, and then the image is detected by in-depth learning. The new image after detection is also written twice. This code also happens "core dump".
With GDB debugging, this error not seem to occur, but only in the case of fast execution.
About vidgear.WriteGear :
link: https://github.com/abhiTronix/vidgear
WriteGear can call ffmpeg to complete video coding. I used this to create MP4 video and encoding it as H264，After my test, writing only MP4 won't cause a segment fault
Please help me, thank you very much~!

This is the GDB information I got in the production environment.
https://user-images.githubusercontent.com/42856783/64103521-06451780-cda5-11e9-8e1a-03750642a402.png
https://user-images.githubusercontent.com/42856783/64103531-09400800-cda5-11e9-81a5-767976dc1597.png

With GDB debugging, this error not seem to occur, but only in the case of fast execution.

This 99,9% means race conditions.
You may have better luck asking at https://answers.opencv.org, this project only does the packaging.
https://answers.opencv.org/question/32415/thread-safe/ suggests that a Mat object (that wraps an image) cannot be shared. This may mean that you cannot pass the same frame to multiple threads, you'll need to copy it. Cannot say more than this.

@mujinbao
Problem - 1
Also, According to https://docs.python.org/3/library/concurrent.futures.html#executor-objects

class concurrent.futures.Executor
An abstract class that provides methods to execute calls asynchronously. It should not be used directly, but through its concrete subclasses.

As you can see concurrent.future.Executor is asynchronous process, therefore your function
def write_video(out, image):

    out.write(image)

will be executed asynchonously and therefore prone to data corruption, where at any instant of time incorrect frame number is being written into the pipeline.
Problem - 2
Moreover, as mentioned in their docs, the use of ThreadPoolExecutor can lead to Deadlocks, when the callable associated with a Future waits on the results of another Future. For example:
import time
def wait_on_b():
    time.sleep(5)
    print(b.result())  # b will never complete because it is waiting on a.
    return 5

def wait_on_a():
    time.sleep(5)
    print(a.result())  # a will never complete because it is waiting on b.
    return 6

executor = ThreadPoolExecutor(max_workers=2)
a = executor.submit(wait_on_b)
b = executor.submit(wait_on_a)

This deadlock sinario can also lead to overlapping of data in which wrong frame is written into wrong pipeline.
@mujinbao Kindly refrain yourself from using ThreadPoolExecuter in your code and stick to basic inbuilt methods. Goodluck.

Closing as this is a usage question and not really related to this repository.

@abhiTronix  @native-api
thank you. I'll try to optimize the code in other ways. This is my usage question. Thank you again for your answers.


Using parenthesis causes wildcard upload to fail on JFrog CLI 2.34.5/6

Describe the bug
"jf rt upload" will not upload multiple artifacts when using parenthesis in the upload command in JFrog CLI version 2.34.5 or 2.34.6.
For example, uploading all the files under the current directory to the "generic-local" repository:
jf rt u "(*)" "generic-local":
{
"status": "success",
"totals": {
"success": 0,
"failure": 0
}
}
This syntax worked on JFrog CLI version 2.24.2.
Current behavior
When using parenthesis in the upload command with wildcard expression, the upload command will not upload the artifacts.
Reproduction steps

Install JFrog CLI version 2.34.5 or 2.34.6

Create several files for example "test.tgz"  "test1.tgz"  "test2.tgz"

Test uploading all the .tgz files:
jf rt u "(*).tgz" "generic-local"
[🔵Info] Log path: path-to-the-log.log
{
"status": "success",
"totals": {
"success": 0,
"failure": 0
}
}

Remove the () from the upload:
jf rt u "*.tgz" "generic-local"
[🔵Info] These files were uploaded:

📦 generic-local
├── 📄 test1.tgz
├── 📄 test.tgz
└── 📄 test2.tgz
{
"status": "success",
"totals": {
"success": 3,
"failure": 0
}
}

Install JFrog CLI version 2.24.2 and test the jf rt u "(*).tgz" "generic-local" command once again, the upload is successful.

WORKAROUND
Remove the parenthesis from the upload command or use older version that supports the upload with parenthesis (for example JFrog CLI version 2.24.2).
Expected behavior
The upload will work similar to the examples in the documentation
JFrog CLI version
2.34.5 2.34.6
Operating system type and version
macOS Ventura version 13.2.1
JFrog Artifactory version
No response
JFrog Xray version
No response

the issue seems to be that jf counts the number of placeholders and expects all of them to be "consumed" in the target path
what used to work, but no longer does:
source: build/(*)-(*)-(*).txt
target: local-something/{3}/{1}/
needs to be rewritten as:
source: build/(*)-*-(*).txt
target: local-something/{2}/{1}/
the second example still uses a wildcard, but without the placeholder notation, as the target pattern only makes use of two capture groups
the examples in the documentation all work b/c they conveniently consume every placeholder defined.


Adds "How to add your site" section to showcases.md

Don't you think it's better to:
Option 1
Create a showcases folder
/showcases
- README.md
- how-to-add-your-site.md

how-to-add-your-site.md → info of how to add your showcase
README.md → current showcases.md (with a link to how-to-add-your-site.md)

Option 2
Move this info of how to add your site at the bottom of showcases.md (and maybe add a link in the top to this part)

I think I prefer Option 1. I'll make those changes.


Serp base param

Aims close #982 by adding a base url parameter to the serpapi class. Should allow one to push the serpapi tool through a proxy.

Thanks!


Custom JS object loses type when passing as prop

Passing a JS object between controllers through passProps loses its type through serialization. When using custom JS objects, you end up losing all of the prototype functions associated with the type.
I understand this is a consequence of the bridge, and the best solution is probably to not use custom JS objects at all. However, I ran into this issue trying to convert my project and I felt it was worth a discussion.

Another, even bigger problem concerning passProps just occurred to me. Because functions can't be serialized, there is no way to pass callback functions to controllers. Unless you use a separate system in JS to keep track of all functions being passed around.
Here's my use case:
A form input requires item selection from a list. Push() list of selectable items. When use selects an item, it should pop() and fill the selected value.
Is there some way we could keep track of functions passed in as props, then use your processProperties function to expose them back as a valid prop within the created element?
I'll take a crack at it.

It's a very good point. You are absolutely right about the reasons behind it, since every component is a new React root wrapped in its own view controller, we have to pass props through native (RCTRootView init ), which is subject to the serialization limitations of RN.
Let's try to brainstorm a few ideas of how to workaround this, since your use-case is a good one. Some ideas of the top of my head, let me know what you think:

I haven't encountered your use-case frequently so far, and I'm trying to think why.. In our apps we rely heavily on redux. Following this architecture decision, we have the standard redux separation between "smart" components and "dumb" components. Smart components are connected to the redux store and are aware of the app state, and dumb components aren't connected - and receive args through props and report back through callbacks. In our mobile apps, we've found that it works nicely to make every screen (the top component held in a React root) a smart component; and make all the sub-components of this screen - dumb components. Smart components rarely receive complex objects through props (since they have access to the store) and rarely report back through prop callbacks (since they dispatch actions). I guess that's why I've never had to pass complex unserializable things through passProps. So one recommendation would be to use redux and pass this info through the store. I've recently posted some example code on how to do that. I'm also planning to post an entire example project in redux soon.

Let's assume we don't want to enforce redux and still find an elegant workaround for your use-case.. Let me think.. The serialization limitation on props for screens never striked me as a major issue because I've seen it in Android activities before, and the ecosystem there seems to deal with this without major problems. Android activities (which are analogous to our screens) are triggered by Intents, and these can only contain serializable parameters. The approach they've chosen there for your use-case is to allow activities to return a result to the calling activity. We can adopt a similar pattern and support passing results back and forth. The screen making the push() or calling the Modal.showController() will register a result callback, and the new screen will call a library function to register its result. We will naturally want to make results serializable but that will work nicely in your use-case. Btw - I think Modal.showController() makes more sense UX-wise then push() in your specific case.

Another idea.. The RN bridge supports passing callbacks because often you would call a native function from JS and you need to receive a return value. These callbacks are bridge-friendly / serialization-friendly so we should be able to adopt a similar mechanism rather easily. We actually already have very similar concepts in the existing implementation - see the way buttons in the nav bar trigger onPress callbacks. We simply follow a registry pattern and register the callbacks using unique string keys. Then pass the key since it's serializable. And when the call back is made, it's made using the string with a library function. Then, we take the response, serialize it, and after passing back through the bridge, we take the callback function from the registry and call it, so the result arrives seamlessly. This would fit nicely inside processProperties like you've suggested. So this will allow us to pass callbacks in props. My only concern about this approach is that it's very prone to abuse and incorrect usage.

Another important concept for any architecture decision that we make is the concept of isolation. I'm sorry for the side-track, but I think you'll find it relevant. After architecting increasingly complex apps in RN, I've come to the conclusion that it's going to be very difficult for big organizations to rely on a single JS bundle (deployment-wise). We are toying with the idea of supporting multiple JS bundles that will run in parallel in the same app on different bridges. Since each bridge comes with its own JS context, these bundles will be executed in complete isolation which brings tremendous dev scale benefits. How is this relevant? because in the future we may find ourselves calling push() on a screen that's defined in a different isolated JS context. If we ever want to support that, we'll need to keep API "isolation-ready" - and that's where the serialization limitations start making a lot of sense.

Haha.. this turned out a little longer than I planned. Let me know what you think

Thanks for the detailed response - it is all very helpful! I completely agree with your points about passing serializable data. As long as its made clear to the developer, this isn't an issue.
I do think there should be a callback mechanism, otherwise the only solution is to use Redux or EventEmitters. Your comment about Android's solution for this is great, and I think it should be emulated! I think it should be possible using the bridge methods you described.
One additional note: I think there should be a warning or error logged when the user attempts to pass in props that are not serializable. It took me a bit to realize they were getting lost during serialization, so it would be helpful to warn other developers attempting such.

I think that the Android result solution will be the best one for now.. I assume it needs to be supported both for show/dismiss modals and push/pop. Originally I thought to add the result to the dismissModal function, but this will not work for the push/pop use-case since the user can click on back at any time. This means a setResult function on the country list screen is probably a better alternative. Every time the user selects a country (a different one can be selected), the setResult will be called and the result will be saved for later. When the screen is dismissed, we will somehow need to call a callback on the parent to let them know what the result is. This means we'll need to hook into some lifecycle event for the dismiss.. maybe will unmount of the country list screen? or maybe add a full fledged lifecycle solution

For anyone interested in redux, react-native-navigation is a syntactic sugar wrapper around react-native-controllers which makes working with redux projects very easy.
https://github.com/wix/react-native-navigation/tree/master/example-redux

:+1: oof just ran across this.
The way I see since React components can take functions as props, then we should allow passProps to take functions too – which is why I'm pursuing options 2/3 and not 1/4.
There are great reasons to go for Redux and multiple JS bundles, but I hope we can avoid enforcing these constraints here, so that simple apps that don't need either can still enjoy this awesome navigation. Makes sense?
And +1 to @Jpoliachik, wish whatever serialization is dropping functions would throw an error instead of silently converting them to null. Is that happening somewhere in react-native itself?
Thanks folks!

Started writing a patch for this – does anyone know when unsubscribes are called?
I'm probably missing something, but don't see my app unsubscribing to the callbacks set via NativeAppEventEmitter.addListener. I see _processButtons and navigation methods like push and resetTo all return a function to run all unsubscribes, but don't see anything calling it.
Thanks,

@pedro regarding unsubscribes, we've just laid out the infra for unsubscribes but they're not being called yet.. we're still considering the correct lifecycle here

@Jpoliachik @pedro @artald let's do a quick vote on which way we wanna go here

Android-style setResult (option 2) will be the easiest and quickest to implement

passing callbacks (option 3) will probably be best but is significantly more complex due to memory leaks and the fact users will call their callbacks more than once (which RN doesn't support, they have events for this)

@talkol Option 3 makes sense. Right now, the Modal.showController and Modal.dismissController APIs even support using Promises (which is probably slightly better than using callbacks). Currently it doesn't return anything as a result but we could create a mechanism which queries the presented/dismissed controllers for it. However, as you said, there is a drawback that you can return a result only once.
I'm not sure why you're saying option 2 is less complex. If we manage our own callback registry instead of using RN callbacks/Promises we'd also end up handling leaks and other issues.
Unless i'm missing something, i'm leaning towards option 3 while accepting the limitation of returning a result once at the end of the action (after a screen was dismissed, after it was popped, etc.).
What do you think?

I agree that option 3 would be best if its implementation doesn't cause any issues. It makes the most sense for developers used to React. While option 2 would be a neat workaround, its a different paradigm.

Closing as not relevant - handled by the new passProps api in Navigation.


Improve web security

Issue description:
Security scores are pretty low for the redotengine landing page. Need to add some security modules to improve SEO scores.

https://securityheaders.com/?q=https%3A%2F%2Fwww.redotengine.org%2F&followRedirects=on

https://developers.cloudflare.com/pages/configuration/headers/
There we go!

#143

https://securityheaders.com/?q=https%3A%2F%2Fdev.redotengine.org%2F&followRedirects=on


move ruby step definitions and code into cucumber-ruby

🤔 What's the problem you've observed?
For Ruby, the step definitions and code to support running the specs sits here, in the CCK repo.
By contrast, for JS and JVM, the step definitions and code lives in the implementation repo, and CCK is just the source of content to feed into that plumbing - features, messages and (illustrative) reference steps.
This presents a few difficulties which we've seen recently:

When adding a new step or feature in CCK, you can either omit to include the Ruby step definition(s), in which case a cucumber-ruby maintainer has to come and add them after the fact, or you can include them at the same time, which might be unreasonable if you're not familiar with Ruby, and certainly wouldn't be reasonable if it were the case for all languages.
When (albeit rarely) adding a CCK case to cover actually new functionality, it leaves a chicken and egg problem - you should include the Ruby step definitions, even though the API for Ruby may not exist yet.

✨ Do you have a proposal for making it better?
Move the Ruby steps and code into cucumber-ruby. Continue to publish a gem containing just the features, messages and reference steps, assuming that's still useful.

I "think" given how much I'm learning this might be a 2024 task.
For now it would be good / give me work to still try optimise things here and fix up issues. That would mean adding in some rubocop stuff to fix up a load of legacy code and streamline things whilst we wait to get things ported over. WDYT?

Yeah I think it's fine to do it in whatever order makes sense, long as we don't make it any harder to do this move.

Done and released in v15 and v15.0.1 has a refactor in place


Support datetime keywords in functions

Rationale for this change
While working on the TIMESTAMPADD function for https://github.com/dask-contrib/dask-sql/pull/813, I was having trouble parsing something like TIMESTAMPADD(YEAR, 2, d) (SchemaError FieldNotField) because YEAR is not a column name in the table.
What changes are included in this PR?
I created a new function to iterate through the arguments of a function and check if any of them are unquoted datetime keywords. If so, I essentially modify the argument to be a quoted string instead.
Are there any user-facing changes?
None.

One other thing that I considered was that perhaps the table does have a column called "year", etc. These changes don't affect anything like SELECT year FROM table, only functions (SELECT my_func(year, bla, blah, month, etc) FROM table).
We could have the function first check whether or not a field called "year" already exists (such as with the existing fields_with_unqualified_name function) and act accordingly. The only case where this wouldn't work is if we had a table with a column called "year" and we were doing a TIMESTAMPADD with it, like: TIMESTAMPADD(year, 1, year) (where the first "year" is a DateTimeField and the second is the column name).

I plan on reviewing this tomorrow @sarahyurick

Looks like there is a small clippy failuire

Marking as draft to indicate this is waiting on some items -- please mark it as ready for review when it is ready for another round of review. Thanks again @sarahyurick

I'm not really sure why the cargo check is failing.

Cool, thanks @andygrove


Make irq_is_enabled() to work on intel_s1000 with multi-level interrupts

On Xtensa, irq_is_enabled() is an alias to z_arch_irq_is_enabled() which only works for first level interrupts. Querying for 2nd level and higher interrupts will always return false. So in order to support irq_is_enabled() and multi-level interrupts on intel_s1000:

A new API is introduced to irq_nextlevel to query individual IRQ line.
** The existing irq_is_enabled_next_level() returns whether any IRQ is enabled.
Following existing work regarding multi-level interrupts on Xtensa, a SoC query implementation is used instead of the one defined in overall architecture.
Enable the query functions on intel_s1000.

It's the assert in sw_isr_common.c that started all this work. The assertion will be triggered if z_isr_install() is called on 2nd or higher level interrupts.
If you mean removing the whole irq_nextlevel API, it will require extending the interrupt "subsystem" to encode some type of parent-child relationship, so not exactly trivial work.

No, I just mean removing z_arch_irq_is_enabled() as a required architecture API.  Nothing really used it, and this is sort of why. Those three cases are all using it for subtly broken reasons:
The assert isn't asking if the IRQ is masked, it's asking if that ISR can be invoked, which is different if they are shared and have to be polled via the driver.
The entropy driver is asking if someone else tried to disable the interrupt so it can avoid making assumptions about state (which is IMHO insane, because who else owns the IRQ if not the driver?!)
And the mayfly driver is just using the enable bit to avoid storing its own state, which only makes sense if z_arch_irq_is_enabled() is a tiny single-instruction wrapper and not a more complicated API required by interrupt controllers.
Just seems to me like there's no "good" use for this thing in a world of interrupt routing.  It's too confusing, easy to misuse, and in fact pretty much ignored anyway.


Fix ctkDICOMObjectModel build error

This commit fixes a regression introduced in d8bbc43 (Fix some Qt5
component issues)

Merging. Previous CI was green and updated topic only include changes in commit message.


add Alpha school

add Alpha school

@dung-ngotien Please provide us with:

the school official website URL
the school street address, including city and country
an URL of a page on the official website where the school offers an IT-related long-term (>1 year) course
a proof, which shows that the school recognizes the domain you are submitting as an official email domain for the students.

Please provide us with a proof, which shows that the school recognizes the domain you are submitting as an official email domain for the students.
You can provide us with any of the following:

A copy of instruction (a hard-copy or electronic one) given to you by the school that tells you to use an email address in this email domain
An URL of a page at the official school website that says that students use this email domain
A reference to a recognized journal where an article was published by someone from the school, with explicit affiliation to the school, and e-mail address from the email domain
A WHOIS data that link the email domain to the school somehow
A copy of official letter from the school representative saying that the school provides e-mail addresses in this domain to the students
Anything else that can prove this fact in similar way, i.e. can be verified independently.

@dung-ngotien You might miss my previous comment. Please react.

@dung-ngotien I am sorry, this request remains unanswered for a while. I have to close it without merging. Please reopen and comment if you have an update regarding the aforementioned issue. Thank you for your understanding!


Launching AEM as a system service

GAP could generate scripts used by ExecStart directive (with absolute paths etc). Such scripts could be placed in "./gradle/aem/localInstance/author/service/start.sh"
This will simplify registration on config mgmt side.

systemd somehow works but could be improved: #794


Reduce size of installed packages, initial load impact

Elevator Pitch
Reduce the size of required installed packages.
Motivation
While downloading the artifacts at install time is easily cached, etc. the files are still very large, and probably are still not fully optimized for initial page load (despite laziness)
Design Ideas

use the existing lab MATHJAX_URL, either by using whatever's there, or adding a hard dependency on jupyter_server_mathjax and don't ship another mathjax
split out the labextensions as a (set of multiple) separate installable package(s)
split out the kernel-side ipywidgets as a package

particularly in JupyterLite (where the widgets haven't really been tested) the hit for downloading and installing the (useless) labextensions into the WASM runtime is going to be very real

split out the full templates (and customized load) as a separate package

these are the worst offenders, with individual XML files that are a couple megabytes
keeping the full shapes available on drawio around is probably important, as missing shapes look... bad

see if there's any way to make the whl not include two copies of the files

Actually, the complexity of splitting any of the frontend assets out looks pretty high, as we don't get a handle on the window in time to fix the URLs, which wouldn't be known ahead of time. So probably the only win here will be splitting out the kernel-only pieces for lite, etc.

#88 demonstrates that ipydrawio widgets now works inside the jupyterlite pyolite kernel. Unfortunately, to get to the tiny bit of code it needs, it has to download the entire wheel, which is pretty much not acceptable.
As we still want (pip|mamba) install ipydrawio to bring in everything, the sane thing to do is probably split out a few more packages.
py_packages/
  ipydrawio/ # metapackage
  ipydrawio-common/  # constants, etc.
  ipydrawio-labextensions/  # the assets
  ipydrawio-widgets/  # kernel assets
  ipydrawio-export/  # as before

Of note, it probably makes sense to keep the __js__ behavior for ipydrawio-common, but only shipping the package.json, and without any data_files tomfoolery.


Docker container won't start if the daemon doesn't have root permissions on /app/data

⚠ Please verify that this bug has NOT been raised before.

[X] I checked and didn't find similar issue

🛡 Security Policy

[X] I agree to have read this project Security Policy

Description
https://github.com/louislam/uptime-kuma/blob/cf10e26affea94130750dbd21e524f6ac8192461/extra/entrypoint.sh#L8-L13
The entrypoint assumes you have root access to the filesystem before dropping privileges, which may not be the case if you're running rootless docker or using nfs. This command fails, and since the entrypoint has set -e, the container exits.
This is an easy one-liner fix. You could do something like (LL16) files_ownership || echo "Warning: could not set permissions on /app/data" >&2
👟 Reproduction steps
Start uptime-kuma container with /app/data pointing to something where root does not have access (two easy ways as mentioned above are nfs since it squashes root by default, or rootless docker daemon)
👀 Expected behavior
Container starts
😓 Actual Behavior
Container doesn't start
🐻 Uptime-Kuma Version
1.17.1
💻 Operating System and Arch
Debian
🌐 Browser
N/A
🐋 Docker Version
No response
🟩 NodeJS Version
No response
📝 Relevant log output
No response

Is it related pr?
https://github.com/louislam/uptime-kuma/pull/1286

Btw NFS is not supported anyway due to SQLite.
For your information, back in the day while I created the Uptime Kuma's dockerfile and the first docker image, I followed a bad dockerize tutorial for Node.js which do not follow best practice. One day, someone taught me that the dockerfile should run in USER node instead of root. However, it is too late to add, as it would affect existing users. So they created entrypoint.sh to partial solve the issue.
In the future non-backward compatibility version (probably 2.0), I will try to make the image true rootless without entrypoint.sh.

Is it related pr? #1286

Yeah looks like this is a dupe of #694 so I'll close this

Btw NFS is not supported anyway due to SQLite.

That's not exactly true... You can theoretically use SQLite over NFS. The issue is with file locking which is implementation-dependent. If you have a single process accessing a single server, it shouldn't be a huge issue. Even with more complex cases, nfs4 supports locking and from what I can tell (there's not a lot of great info online), it is compatible with sqlite. I've been running sqlite over nfs for a long time now without any issues!

In the future non-backward compatibility version (probably 2.0), I will try to make the image true rootless without entrypoint.sh.

Awesome! Let me know if you want any help with that


Clarify examples in Publisher documentation (#33)

Here's my attempt at making this clearer to avoid the confusion
I explained in #33.
Signed-off-by: Adam Williamson<EMAIL_ADDRESS>

Great, thank you for this contribution


Routing based on Accept Header

I'm trying out the Dingo API to build a Web App. The way Dingo handles api versions is to define an Accept header with a specific version. There is nothing in the URL to indicate the version. To use curl to get a version would look something like:
curl -v -H "Accept: application/vnd.YOUR_SUBTYPE.v1+json" http://example.app/users
Lets assume that Servers A and B and running the service however Server A has version 1, 2 and 3 but Server B has only version 1. how could I use Fabio to route this app based on its Accept Header (or any custom header I would assume). Maybe this has nothing to do with Fabio and should be handled in the Consul service def. Without changing the URL I'm not sure how I could set this up in consul to handle multiple versions.

Right now you can't since fabio does not route by header. Adding this to the proxy code isn't the main issue. At present I don't have a way to let you configure this. See #111
The way we're doing this - since we are taking exactly this versioning approach - is to have all services handle all versions. The content type versions should be deprecated over time anyway so ideally you might have only 1-2 versions of a given entity to support.
Do you have this problem right now which prevents you from using fabio or are you considering this a potential roadblock for adoption?

Thank you for the fast response! I would not consider this issue a roadblock. For simplicity sake I'm likely going to force all api servers to handle all versions anyway. This only becomes an issue if a second version of the API actually existed. Again thank you for the fast response.


Connecting to ChatGPT without Chrome/Pupeteer

Hi, someone discovered that it was possible to connect to ChatGPT using the official OpenAI API just by passing the correct model name. You only need the official OpenAI API key, and there is no need to either have a Chrome open or obtain session/clearance tokens from the browser. I implemented this in a simple npm module that you can check out.
This may be an improvement over the current method, it is however more low-level (it doesn't support conversations/follow up questions out of the box, however it is simple to implement this as can be seen in the linked repo). The only downside is that the conversations/conversation ids are not synced with the web version or over multiple sessions - you always have to pass the entire conversation history.

Just seeing this now.
Check out the latest version: https://github.com/transitive-bullshit/chatgpt-api/releases/tag/v4.0.0 😄
Yeah; we need to track messages on our side now, but I've added an example of how to do this using keyv with redis. Should be really easy to add support for any databse.
Definitely looking for help w/ this new version btw; let me know if you're interested in joining forces :)

Excelent timing 😂
I'm glad you implemented this,  I managed to get my VSCode extension working again with the latest version. I just hope that OpenAI doesn't remove/fix this soon...
If there is something I can do to assist, I'd be happy to help, however I do not have that much experience with this kind of stuff

I just hope that OpenAI doesn't remove/fix this soon...

I have heard from a credible source that this model is a "stealth release" from OpenAI for testing with partners, so I think it's unlikely that we'll have to revert.
Feel free to join our discord if you're interested in contributing or hacking on stuff here.


Add support for precommit

Fixes #1700
Changes proposed:

[X] Add
[ ] Delete
[ ] Fix
[ ] Prepare

Had to remake the icon based on the png, good thing it wasn't too complex :D

Had to remake the icon based on the png, good thing it wasn't too complex :D

@KingDarBoja You were more than welcome to work off file-icons's SVG, if it would have helped. =)

Had to remake the icon based on the png, good thing it wasn't too complex :D

@KingDarBoja You were more than welcome to work off file-icons's SVG, if it would have helped. =)

Had no idea about those icons, but glad if I can use them if need :)


Remove references to a default category

Changes in this PR
Delete environment variable CONTENTFUL_DEFAULT_CATEGORY_ENTRY_ID

@EdwinKruglov I will wait until your current work is completed before continuing.


How to build project?

I have made fork of this repo and now I'm trying to build it, but I'm stuck... Basically I tried following as the docs says:
$ npm install -g grunt-cli
$ grunt

This gives me following error:
grunt-cli: The grunt command line interface. (v0.1.13)

Fatal error: Unable to find local grunt.

If you're seeing this message, either a Gruntfile wasn't found or grunt
hasn't been installed locally to your project. For more information about
installing and configuring grunt, please see the Getting Started guide:

http://gruntjs.com/getting-started

Also if I try npm test command all breaks because lo-dash is not found, below is the error log about this.
PhantomJS 1.9.8 (Linux) Factory: LayoutStorage the removeItem should call save FAILED
        ReferenceError: Can't find variable: _
            at iterator (/home/wunder/projects/malhar-angular-dashboard/src/components/models/LayoutStorage.js:168)
            at forEach (/home/wunder/projects/malhar-angular-dashboard/bower_components/angular/angular.js:326)
            at _addDefaultLayouts (/home/wunder/projects/malhar-angular-dashboard/src/components/models/LayoutStorage.js:169)
            at load (/home/wunder/projects/malhar-angular-dashboard/src/components/models/LayoutStorage.js:126)
            at LayoutStorage (/home/wunder/projects/malhar-angular-dashboard/src/components/models/LayoutStorage.js:54)
            at /home/wunder/projects/malhar-angular-dashboard/src/components/models/LayoutStorage.spec.js:672
        Error: spyOn could not find an object to spy upon for save()
            at /home/wunder/projects/malhar-angular-dashboard/src/components/models/LayoutStorage.spec.js:683

So how I can get things working?

I have same problem. I have grunt-cli installed, so I tried to fix this by installing grunt locally with npm install grunt. Then I ran grunt,  but it was unable to load tasks:
dparker@camera1 ~/dev/malhar-angular-dashboard $ grunt
Loading "Gruntfile.js" tasks...ERROR

Error: Cannot find module 'load-grunt-tasks'
Warning: Task "default" not found. Use --force to continue.

Seems like a non-starter.

Apologies, I'll update the documentation.

Imho it's not good to close issues before actual issue is fixed.


support for huggingface llama?

We use vicuna in huggingface format. I notice only meta format is supported ? Is that true?

The script for converting huggingface format to meta format will be released ASAP in https://github.com/openppl-public/ppl.pmx

The script for converting huggingface format to meta format will be released ASAP in https://github.com/openppl-public/ppl.pmx

thank you, got it.

https://github.com/openppl-public/ppl.pmx/tree/master/model_zoo/llama/huggingface


Parse error type

When parsing a feed the error type that is returned is &str.
Could this return Error so it could be used with other crates like anyhow and permit a function to return a result and use the ? symbol?
Something like the following
#[derive(Debug)]
pub struct Error;

impl StdError for Error {}

impl Display for Error {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        write!(f, "Could not parse XML as Atom or RSS from input")
    }
}

impl FromStr for Feed {
    type Err = Error;

    fn from_str(s: &str) -> Result<Self, Self::Err> {
        match atom_syndication::Feed::from_str(s) {
            Ok(feed) => Ok(Feed::Atom(feed)),
            _ => match rss::Channel::from_str(s) {
                Ok(feed) => Ok(Feed::RSS(feed)),
                _ => Err(Error),
            },
        }
    }
}

Here is the commit on my fork ready for PR 094ee168784e265468eed81202553548aabb8c23

Here is the commit on my fork ready for PR 094ee168784e265468eed81202553548aabb8c23


SASIAE Stream read not working

Any read operation will not work.
The tinySASIAE simulator may be modified as well.
The FormattedStream may also freeze the simulator.

Well, read/write in streams through the simulator may not be the best idea.
For the moment, I remove the read feature from SASIAE::Stream.
But there will be modifications in the future.


[Angular-NgRx-SCSS] Implement Reusable RepoCardComponent

Resolves #187

Think this should be good to go!

Thanks! It seems like a test fails in CI mode only. I am going to try to fix that before merging this if that's okay.


Pop-up message does not close after first click

Description
When adding the account IDs to the account create update page it notifies me that I do not have an account info for data to be pulled into the screen. After I click close once, the window does not close. I have to click it 3/4 times.
Steps to reproduce
Go to create an account update transaction
Enter a value to update that does not have an account info file associated with it.
Additional context
No response
Hedera network
other
Version
0.14.0-alpha.2
Operating system
None

Link to Loom Video: https://www.loom.com/share/855187e277394cef8bbfa6e6ee0b6adf

verified fix


Extensibility of type concepts (i.e the already defined concepts)

For example in your Array concept you check, if T implements some concept, and instantiates some other concept-macros automatically and such (https://github.com/tomhrr/dale/blob/master/modules/array.dt#L103)
Now I define additional concepts (e.g. Add, which means, + is defined over the type), create a concept-macro + for arrays of these concepts, and want them to be implemented automatically, when the Array is instantiated.
For a single concept I could just define a new concept-macro which calls (instantiate Array (force (uq T) Type)), and then does the automatic instatiations, etc.. With multiple such concepts (eg. a Sub too, similar to Add), one would have to instantiate both with forcing them to the specific concept, which is not neccessary in your non-extensible way of implementing this.
Another problem, when doing so, is, that Type (refined by both concept macros) will be defined twice, which will report an error.
This can be avoided with some extra work (checking if the type exists, before defining it).
So when using this way of extending, some macro would be nice, which defines a type and doesn't report an error, when it already exists (should not be difficult). And all the struct definitions will have to be updated.
The same for the functions.
Another possibility would be enabeling to instantiate all concepts, that are implemented of the concept exactly once, or just recursively instantiating all the concepts, which are refined by a single concept (this should be more secure). Or doing even both (just instantiating once, and only the selected concept, via force, and it's refinements, if there are multiple implemented concepts).
This should also be implementable via macros, I think, but is more difficult.
It seems appropriate for concepts, which define a type and functions for it, but not for concepts which just define functions for a specific type.
If you have to instantiate a forced version to every specialized concept of the array, the first approach doesn't have much benefits anymore. The simplest solution with this seems a macro, which takes a list of concepts and instantiates the type for all of them.
With the second approach, this can also be done with a similar macro, by defining an anonymous (gensym) concept, which refines all the concepts in the list. and instantiating this without force. (but force may still be needed in the underlying macros)
Now, that I have written this, I think, I may be able to implement something like this myself. Some suggestions which approach seems better, would be nice. If it works and is useful, I'll send a pull-request.

On Fri, Sep 16, 2016 at 04:45:52PM -0700, Fabio Krapohl wrote:

...

I think I'm missing something, here.  Wanting to be able to
instantiate the additional macros automatically makes sense, but
putting that to one side, there shouldn't be a need in the above cases
to use 'force'.  Nor should there be any problem with multiply-defined
types.  The example program at
https://github.com/tomhrr/dale/blob/master/eg/github-107/github-107.dt
works through the 'Add'/'Sub' use case, assuming I understand what
you're proposing.

See here https://github.com/porky11/planets/blob/master/src/sequence-math.dt#L18
I already implemented something similar here, (also for * and /), and in this comment you see another definition of the Array concept macro, which only instantiates + (or another function) if a specific concept is implemented over this type. instantiatng this concept macro would require that the Array-type already exists, which could be interpreted that it could call all concept macros that are refined by this type.
So it isn't needed to instantiate specific functions if you know, they can be implemented for this type.
As you know from the default implementation of array, it also instantiates some functions only if some concepts are defined over the element type

On Tue, Sep 27, 2016 at 09:26:01AM -0700, Fabio Krapohl wrote:

See here https://github.com/porky11/planets/blob/master/src/sequence-math.dt#L18

Thanks for this, it makes much more sense now.
The approach where the concept macro is instantiated for all of the
concepts that are implemented by the argument (or arguments) makes
sense to me.  BasicMath in the planets project is using refinements to
group a set of concepts, which is fine, but not the only way in which
refinements are used: keeping that consistent will help to make things
clearer.  An 'instantiate-all' form would need to iterate across the
concepts for each of the types, and the relevant concept macros would
need to handle (as you mentioned) various structures/functions already
existing, but neither of these is much of a problem.  It would be
nicer if there were some way to have each of the 'sub' concept macros
not have to instantiate the original one too, to make it a bit
cleaner, but I can't see a decent way to do that.

It would be nicer if there were some way to have each of the 'sub' concept macros not have to instantiate the original one too, to make it a bit cleaner, but I can't see a decent way to do that.

But this is what instantiate-all would do.  Not by using a different macro for instantiate but extending the 'sub' concepts macros.
In that case, you could call something like instantiate-all inside all 'sub' concept macros, but will have to ensure, that this will only be called once.
But maybe if some other idea for automatically instantiating functions, described in #86, is used, instantiate-all may not be neccessary anymore.

I was thinking that instantiate-all would expand to a series of instantiate calls, with each of those 'sub' calls handling the existence/non-existence of required types.  That would allow instantiate-all to remain simple, at the expense of the 'sub' calls becoming more complicated.


Avoid replacing Net::BufferedIO

Ruby's Net::BufferedIO doesn't hit the network; therefore, this library should not be patching it.
I believe that WebMockNetBufferedIO and PatchedIO were introduced so that a String could be used as a raw response. However; it's actually much simpler just to convert the string to a StringIO before attempting to parse the raw HTTP response.

Thank you @rzane . That is a solid simplification of Net::HTTP adapter. Interesting that introduction of custome BufferedIO led to so much added complexity before.


⚠ Bofrost.lu has degraded performance

In 2454ed9, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1549 ms

Resolved: Bofrost.lu performance has improved in 901e415 after 6 minutes.


Add Swastik star pattern in C, Pattern36

Description
Task
For the given input 7 the following pattern should print:
Pattern Image

Filename
Filename should be Pattern36.c

I think I can work on this.

ok, @Kruthardh11 I am assigning this issue to you

Assign the task to me and I can send a pr @Vishal21121


[feature-asking] Can you normalize the name of the network package read interface function?

The following functions don't seem to clearly define what to do:
tcpx.FirstBlockOf()
tcpx.FirstBlockOfBytes()
I used this:
tcpx.UnpackToBlockFromReader()

This ？
func Read(r io.Reader) ([]byte,error) {
	return UnpackToBlockFromReader(r)
}

It doesn't fit to official reader Read([]byte) error


[FEATURE] Support local cross-encoder model

Is your feature request related to a problem?
We're trying to put a bunch of local model types in ml-commons (#1164). One such type is a cross-encoder. This will allow us to support reranking in the neural-search plugin, which a lot of people have asked for.
What solution would you like?
Will be able to upload a custom cross-encoder model, deploy it, and use it with the upcoming neural search reranking processor.
What alternatives have you considered?
External hosting: Still would have to deal with the inputs and outputs, and then we also get the pleasure of figuring out some solution for externally hosting cross-encoders.
LTR: That can do reranking, but not cross-encoder reranking, so this isn't where that thought belongs.
Do you have any additional context?
Add any other context or screenshots about the feature request here.

Gonna implement this as a new ml-algorithm / function name: TEXT_SIMILARITY. Cross-encoders are one technique to do this, but not the only one. Essentially it's just defined as (text1, text2) -> similarity_socre
(As opposed to embedding models which are (text) -> vector, and then similarity is an inner product of two vectors)

A bunch of requests have come in for remote reranking models too, so I'll make sure that connectors can deal with TextSimilarityDatasets appropriately as well

Make sure local model and remote model can be switched smoothly .

Make sure local model and remote model can be switched smoothly .

This is done in this PR https://github.com/opensearch-project/ml-commons/pull/1954

Make sure local model and remote model can be switched smoothly .

@HenryL27 will check remote model and then we can close this issue.


Use different maps region

Is there a setting/function in the toolbox that can enable using the available maps from VW of ROW on a NAR mib?

This does not depend on the Toolbox but on the firmware itself.
When you insert SD card:

FW checks the CID of the SD card. As long as you use original VW/Skoda/Seat card the check passes. CID is the same for all of them.
FW read coding of the 5F:

By using this byte, FW understands which subfolder /maps/00 (Europe) or /maps/01 (NAR) it should use to read the info.
It reads \maps\eec\eec_wld\overall.nds file which contains FECs of the maps on SD (so called Supported FECs). You can see these FECs in Service Mode->Supported FECs menu.
It checks if you have corresponding installed FEC which matches the supported one. You can check that:
a) in Service Mode->Installed FECs
b) by using ODIS-S/E, Car Scanner etc any software that can read 003-Measured Values->Status of all SWaP functions

If any of these checks fail or files on navi SD are broken (were written with errors) the firmware will not accept maps and should raise an error in 5F. Hope this helps :)

Great explanation, I need the ROW fec!


Forbidden: user "system:serviceaccount:cert-manager:addons-ingress-cert-manager" does not have permissions to set approved/denied conditions for issuer {aws-acm-pca AWSPCAClusterIssuer awspca.cert-manager.io}

Describe the bug:
Trying to setup aws acm pca but I am getting this error from the cert-manager logs:
addons-ingress-cert-manager-7f554f84cc-cwcq9 cert-manager E0512 21:30:29.631974       1 controller.go:166] cert-manager/certificaterequests-approver "msg"="re-queuing item due to error processing" "error"="admission webhook "webhook.cert-manager.io" denied the request: status.conditions: Forbidden: user "system:serviceaccount:cert-manager:addons-ingress-cert-manager" does not have permissions to set approved/denied conditions for issuer {aws-acm-pca AWSPCAClusterIssuer awspca.cert-manager.io}" "key"="istio-system/istio-ca-fskpq"
Here is the rbac I am trying:

apiVersion: awspca.cert-manager.io/v1beta1
kind: AWSPCAClusterIssuer
metadata:
  name: aws-acm-pca
  namespace: istio-system
spec:
  arn: arn:aws:acm-pca:redacted-654a1798a8c7
  region: us-east-1
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: aws-acm-pca-role
rules:
- apiGroups:
  - cert-manager.io
  resources:
  - signers
  verbs:
  - approve
  resourceNames:
  - aws-acm-pca.awspca.cert-manager.io/* # edit
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: aws-acm-pca-role
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: aws-acm-pca-role
subjects:
- kind: ServiceAccount
  name: addons-ingress-cert-manager
  namespace: cert-manager
---
kubectl get AWSPCAClusterIssuer -o yaml
apiVersion: v1
items:
- apiVersion: awspca.cert-manager.io/v1beta1
  kind: AWSPCAClusterIssuer
  metadata:
    annotations:
      kubectl.kubernetes.io/last-applied-configuration: |
        {"apiVersion":"awspca.cert-manager.io/v1beta1","kind":"AWSPCAClusterIssuer","metadata":{"annotations":{},"name":"aws-acm-pca"},"spec":{"arn":"arn:aws:acm-pca:us-eas-redacted-98a8c7","region":"us-east-1"}}
    creationTimestamp: "2022-05-12T12:18:26Z"
    generation: 1
    name: aws-acm-pca
    resourceVersion: "813596"
    uid: 618647ec-ac44-44db-b152-c36aea32d119
  spec:
    arn: arn:aws:acm-pca:us-eas-redacted-4a1798a8c7
    region: us-east-1
  status:
    conditions:
    - lastTransitionTime: "2022-05-12T12:18:30Z"
      message: Issuer verified
      reason: Verified
      status: "True"
      type: Ready
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""

for code blocks of your kubectl output or YAML files.
-->
Expected behaviour:

Steps to reproduce the bug:

Anything else we need to know?:
Environment details::

Kubernetes version: v1.21
Cloud-provider/provisioner: AWS EKS
cert-manager version:  1.8
Install method: e.g. helm/static manifests: helm with the following values.yaml

serviceAccount:
  annotations:
    eks.amazonaws.com/role-arn: replaceme

securityContext:
  enabled: true
  fsGroup: 1001

startupapicheck:
  podAnnotations:
    sidecar.istio.io/inject=false

webhook:
  serviceAccount:
    annotations:
      eks.amazonaws.com/role-arn: replaceme

/kind bug

I am pretty sure this was cause by me installing cert-manager via helm with a name of addons-ingress-cert-manager
so the awspca cluster issuer rbac was connected to the wrong service account


Support for special tensors

As discussed I'm starting this issue as a place where we can collect tensors that we'd like to support. So far we'd like to add

Levi-Civita symbol
Clebsch Gordon coefficients

A "metric" or "complex conjugate" tensor. This is useful to calculate e.g. expectation values or absolute values of Tensor Networks

Do we still want to do this?

Hmm, I don't think it's a priority. We can close it.


Add Finnish language options

Characters are the same as Swedish, but adds the '€' symbol

Looks good to me. Thanks for the contribution!


added a preloader

Closes #450
I have added a preloader to the website. Please have a look.
If you want further changes in this pull request then please tell me.
Thankyou for having me as a contributor!

@Illaf bro please resolve conflict coming . So that i can merge.

@Illaf bro please resolve conflict coming . So that i can merge.

okay

@Anupkjha2601 resolved the merge conflict!


Python script using the medium model doesn't work

I am trying to run the following python script, which uses the medium model:
import torchaudio
from audiocraft.models import MusicGen
from audiocraft.data.audio import audio_write

model = MusicGen.get_pretrained('medium')
model.set_generation_params(duration=8)  # generate 8 seconds.

descriptions = ['happy rock', 'energetic EDM', 'sad jazz']

wav = model.generate(descriptions)  # generates 3 samples.

for idx, one_wav in enumerate(wav):
    # Will save under {idx}.wav, with loudness normalization at -14 db LUFS.
    audio_write(f'{idx}', one_wav.cpu(), model.sample_rate, strategy="loudness")

I got the following logs:
Traceback (most recent call last):
  File "/home/worker/ai_music/fb_audiocraft/example.py", line 5, in <module>
    model = MusicGen.get_pretrained('medium')
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/worker/ai_music/fb_audiocraft/venv/lib/python3.11/site-packages/audiocraft/models/musicgen.py", line 96, in get_pretrained
    lm = load_lm_model(ROOT + f'{sig}.th', device=device)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/worker/ai_music/fb_audiocraft/venv/lib/python3.11/site-packages/audiocraft/models/loaders.py", line 61, in load_lm_model
    model = builders.get_lm_model(cfg)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/worker/ai_music/fb_audiocraft/venv/lib/python3.11/site-packages/audiocraft/models/builders.py", line 109, in get_lm_model
    return LMModel(
           ^^^^^^^^
  File "/home/worker/ai_music/fb_audiocraft/venv/lib/python3.11/site-packages/audiocraft/models/lm.py", line 167, in __init__
    self.transformer = StreamingTransformer(
                       ^^^^^^^^^^^^^^^^^^^^^
  File "/home/worker/ai_music/fb_audiocraft/venv/lib/python3.11/site-packages/audiocraft/modules/transformer.py", line 596, in __init__
    layer_class(
  File "/home/worker/ai_music/fb_audiocraft/venv/lib/python3.11/site-packages/audiocraft/modules/transformer.py", line 444, in __init__
    super().__init__(d_model, num_heads, dim_feedforward, dropout,
  File "/home/worker/ai_music/fb_audiocraft/venv/lib/python3.11/site-packages/torch/nn/modules/transformer.py", line 450, in __init__
    self.linear2 = Linear(dim_feedforward, d_model, **factory_kwargs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/worker/ai_music/fb_audiocraft/venv/lib/python3.11/site-packages/torch/nn/modules/linear.py", line 96, in __init__
    self.weight = Parameter(torch.empty((out_features, in_features), **factory_kwargs))
                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 18.00 MiB (GPU 0; 1.96 GiB total capacity; 1.37 GiB already allocated; 9.38 MiB free; 1.44 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF

Regarding my hardware, I have an AMD Ryzen 5 2500U processor with Radeon Vega Mobile Gfx and Nvidia GeForce GTX GPU (the appropriate drivers are already installed).
I'm on Ubuntu 20.04 OS.
Here is my output for nvidia-smi command:
Mon Jun 12 20:09:24 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 520.61.05    Driver Version: 520.61.05    CUDA Version: 11.8     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|                               |                      |               MIG M. |
|===============================+======================+======================|
|   0  NVIDIA GeForce ...  On   | 00000000:01:00.0 Off |                  N/A |
| N/A   40C    P8    N/A /  N/A |      9MiB /  2048MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|    0   N/A  N/A      1059      G   /usr/lib/xorg/Xorg                  4MiB |
|    0   N/A  N/A      2035      G   /usr/lib/xorg/Xorg                  4MiB |
+-----------------------------------------------------------------------------+

Here is my output to lscpu:
Architecture:                    x86_64
CPU op-mode(s):                  32-bit, 64-bit
Byte Order:                      Little Endian
Address sizes:                   43 bits physical, 48 bits virtual
CPU(s):                          8
On-line CPU(s) list:             0-7
Thread(s) per core:              2
Core(s) per socket:              4
Socket(s):                       1
NUMA node(s):                    1
Vendor ID:                       AuthenticAMD
CPU family:                      23
Model:                           17
Model name:                      AMD Ryzen 5 2500U with Radeon Vega Mobile Gfx
Stepping:                        0
Frequency boost:                 enabled
CPU MHz:                         1600.000
CPU max MHz:                     2000,0000
CPU min MHz:                     1600,0000
BogoMIPS:                        3992.53
Virtualization:                  AMD-V
L1d cache:                       128 KiB
L1i cache:                       256 KiB
L2 cache:                        2 MiB
L3 cache:                        4 MiB
NUMA node0 CPU(s):               0-7

Thanks in advance for any help

The python script for the small model also gives the same problem

我认为你可以在CPU上运行，而不是在GPU上运行，我运行的是medium模型，差不多占用了12GB的VRAM

Your GPU doesn't have enough ram.

@0RaMsY0  Sorry, what is the PR ? Your link points to this issue.

@vegandiet705 #64

@0RaMsY0 Thank you, now I can run the small model locally on CPU. But still can't run the medium model (I get the Killed output).
Is there some hack to run the medium and the large model on my CPU ? I don't mind if it takes a lot of time.

@vegandiet705  you can run the large model in Google Colab they give you a GPU with like 15GB of VRAM and 12GB of system ram so it is more then enough to run it, i tried it and it works fine.

@0RaMsY0 Thanks a lot for the help. However, I had already managed to run it on Colab. I was wondering if there were some hacks to run the larger models in a CPU with limited RAM. To give more details, I'm interested in using the models in an embedded application without access to the internet. The machine I have now is limited in RAM and I can't buy a more powerful machine right now.

@vegandiet705  Personally i don't know. But i think if you have a fast SSD you can create a swap file and load the model there with that you will be able to use it i guess. I don't know how exactly but you can do more research on that.

I'm getting a CUDA Out of memory error when trying to train musicgen-medium with encodec_32khz  on 2x A100 40GB GPUs... Wha??? I bumped the batch size right down to 2, but same error. When idle, nvidia-smi reports 7MiB / 40960MiB per GPU.

I'm getting a CUDA Out of memory error when trying to train musicgen-medium with encodec_32khz on 2x A100 40GB GPUs... Wha??? I bumped the batch size right down to 2, but same error. When idle, nvidia-smi reports 7MiB / 40960MiB per GPU.

from where you can reduce the batch size. Can you tell me?


fix(adapter-pg): pass customParsers to the query

Related to https://github.com/prisma/prisma/issues/23505

TODO: check adapter-neon (& others)


nnn: add withIcon/withNerdIcon options

Motivation for this change
This allows nnn to be build with either Terminal icons (either icons-on-terminal, that does not seem to be package in Nixpkgs yet, or by installing all fonts separately) or Nerd Fonts icons support.
Partially fixes #99822.
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[x] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 110053 run on x86_64-linux 1

Result of nixpkgs-review pr 110053 run on x86_64-linux 1

Do you know why there are no rebuilds?

Do you know why there are no rebuilds?

Do you know why there are no rebuilds?

The defaults didn't change.

Do you know why there are no rebuilds?

The defaults didn't change.


#626: Improve the way to identify the boundary

Fix for #626
The goal of the PR is to improve the way to identify the boundary pattern especially when we have an empty line before the pattern. If the pattern cannot be found, we get unexpected behavior such as IOException of type "Too many open files in system" because the loop is endless so it creates and opens new files again and again.

@essobedo Let me find a reviewer for this pull request, thanks for submitting it

@dmzaytsev please review, thanks

@essobedo please see couple comments above

@dmzaytsev thx for your remarks, please find my answers above

@rultor merge

@rultor merge

@dmzaytsev Thanks for your request. @yegor256 Please confirm this.

@yegor256 Could you please check? thx in advance

@yegor256 ping

@yegor256 please check the PR, sorry to insist but it is part of my job :-)

@rultor try to merge

@rultor try to merge

@yegor256 OK, I'll try to merge now. You can check the progress of the merge here

@rultor try to merge

@yegor256 Done! FYI, the full log is here (took me 23min)

@elenavolokhova please, review this issue for QA compliance, as per par.24

@rultor deploy now pls

@dmzaytsev
According to our quality rules:

The code reviewer found at least three problems in the code.

There were no issues found and fixed during review.
Please confirm that you will try to find at least three problems next time.

@rultor deploy now pls

@davvd OK, I'll try to deploy now. You can check the progress here

@rultor deploy now pls

@davvd @essobedo Oops, I failed. You can see the full log here (spent 2min)
+ set -e
+ set -o pipefail
++ dirname ./run.sh
+ cd .
+ echo 15465
+ echo '1.61.8 b552866'
1.61.8 b552866
+ date
Mon Apr 18 21:15:58 UTC 2016
+ uptime
 21:15:58 up 18 days,  2:07,  0 users,  load average: 11.91, 13.55, 13.39
+ head=git@github.com:yegor256/takes.git
+ head_branch=master
+ vars=('--env=MAVEN_OPTS=-XX:MaxPermSize=256m -Xmx1g' '--env=JAVA_OPTS=-XX:MaxPermSize=256m -Xmx1g' '--env=head=git@github.com:yegor256/takes.git' '--env=head_branch=master')
+ image=yegor256/rultor
+ directory=
+ scripts=('sudo locale-gen en_US en_US.UTF-8' ';' 'sudo dpkg-reconfigure locales' ';' 'export LC_ALL=en_US.UTF-8' ';' 'export LANG=en_US.UTF-8' ';' 'export LANGUAGE=en_US.UTF-8' ';' 'sudo gem install --no-rdoc --no-ri pdd' ';' 'sudo gem install --no-rdoc --no-ri est' ';' 'version=$(curl -K ../curl-appveyor.cfg --data "{accountName: '\''yegor256'\'', projectSlug: '\''takes'\'', branch: '\''master'\''}" https://ci.appveyor.com/api/builds | jq -r '\''.version'\'')' ';' 'while true' ';' 'do status=$(curl -K ../curl-appveyor.cfg https://ci.appveyor.com/api/projects/yegor256/takes/build/${version} | jq -r '\''.build.status'\'')' ';' 'if [ "${status}" == "null" ]; then exit 1; fi' ';' 'if [ "${status}" == "success" ]; then break; fi' ';' 'if [ "${status}" == "failed" ]; then echo "see https://ci.appveyor.com/project/yegor256/takes/build/${version}"; exit 1; fi' ';' 'echo "waiting for AppVeyor build ${version}: ${status}"' ';' 'sleep 5s' ';' 'done' ';' 'mvn clean deploy -Pqulice --errors --settings ../settings.xml' ';' 'mvn clean' ';' 'pdd --source=$(pwd) --verbose --file=takes.xml' ';' 's3cmd --no-progress put takes.xml --config=../s3cfg s3://pdd.teamed.io/takes.xml' ';' 'est --dir=./est --verbose --file=takes.xml --format=xml' ';' 's3cmd --no-progress put takes.xml --config=../s3cfg s3://est.teamed.io/takes.xml' ';')
+ squash=false
+ ff=default
+ rebase=false
+ container=yegor256_takes_659
+ as_root=false
+ mkdir -p /home/rultor/.ssh
+ echo -e 'Host github.com\n\tStrictHostKeyChecking no\n'
+ chmod 600 /home/rultor/.ssh/config
+ git clone git@github.com:yegor256/takes.git repo
Cloning into 'repo'...
+ cd repo
+ git config user.email<EMAIL_ADDRESS>+ git config user.name rultor
+ '[' -z 'sudo locale-gen en_US en_US.UTF-8' ']'
+ cd ..
+ cat
+ '[' false = true ']'
+ cat
+ chmod a+x entry.sh
+ cat
+ echo 'sudo locale-gen en_US en_US.UTF-8' ';' 'sudo dpkg-reconfigure locales' ';' 'export LC_ALL=en_US.UTF-8' ';' 'export LANG=en_US.UTF-8' ';' 'export LANGUAGE=en_US.UTF-8' ';' 'sudo gem install --no-rdoc --no-ri pdd' ';' 'sudo gem install --no-rdoc --no-ri est' ';' 'version=$(curl -K ../curl-appveyor.cfg --data "{accountName: '\''yegor256'\'', projectSlug: '\''takes'\'', branch: '\''master'\''}" https://ci.appveyor.com/api/builds | jq -r '\''.version'\'')' ';' 'while true' ';' 'do status=$(curl -K ../curl-appveyor.cfg https://ci.appveyor.com/api/projects/yegor256/takes/build/${version} | jq -r '\''.build.status'\'')' ';' 'if [ "${status}" == "null" ]; then exit 1; fi' ';' 'if [ "${status}" == "success" ]; then break; fi' ';' 'if [ "${status}" == "failed" ]; then echo "see https://ci.appveyor.com/project/yegor256/takes/build/${version}"; exit 1; fi' ';' 'echo "waiting for AppVeyor build ${version}: ${status}"' ';' 'sleep 5s' ';' done ';' 'mvn clean deploy -Pqulice --errors --settings ../settings.xml' ';' 'mvn clean' ';' 'pdd --source=$(pwd) --verbose --file=takes.xml' ';' 's3cmd --no-progress put takes.xml --config=../s3cfg s3://pdd.teamed.io/takes.xml' ';' 'est --dir=./est --verbose --file=takes.xml --format=xml' ';' 's3cmd --no-progress put takes.xml --config=../s3cfg s3://est.teamed.io/takes.xml' ';'
+ gpgconf --reload gpg-agent
+ gpg --keyserver hkp://pool.sks-keyservers.net --verbose --recv-keys 9AF0FA4C
gpg: requesting key 9AF0FA4C from hkp server pool.sks-keyservers.net
gpgkeys: HTTP fetch error 52: Empty reply from server
gpg: no valid OpenPGP data found.
gpg: Total number processed: 0
'cid' file is absent, container wasn't started correctly

@elenavolokhova I confitm

@davvd Quality is acceptable here.

@davvd Quality is acceptable here.

@elenavolokhova thank you, let's try to make it "good" next time

@dmzaytsev 10 mins was added to the account of @elenavolokhova (for QA review), in transaction 84061934; Thank you, I have added 22 mins to your account in payment/transaction "84061962", time consumed: 123 hours and 16 mins; review comments (c=7) added as a bonus; +22 to your rating, your total score is +2120


bug: Screen remains black after closing/opening app

Plugin version:
4.2.1
Platform(s):
iOS (at least 16.4)
Current behavior:
When closing the app and re-opening, the screen remains black.
Expected behavior:
App should be renderend again
Steps to reproduce:
Open app, close app and re-open again
Related code:
It seems to be caused by the way modalPresentationStyle of the privacyViewController. It is currently set to 'overFullScreen' and this causes the underlaying view to be unloaded. If we change this to 'fullScreen' everything seems to be working.
Not working for me:
privacyViewController.modalPresentationStyle = UIModalPresentationStyle.overFullScreen

Working correctly for me:
privacyViewController.modalPresentationStyle = UIModalPresentationStyle.fullScreen

Other information:

Capacitor doctor:
💊   Capacitor Doctor  💊

Latest Dependencies:

  @capacitor/cli: 5.5.1
  @capacitor/core: 5.5.1
  @capacitor/android: 5.5.1
  @capacitor/ios: 5.5.1

Installed Dependencies:

  @capacitor/core: 5.5.1
  @capacitor/android: 5.5.1
  @capacitor/cli: 5.5.1
  @capacitor/ios: 5.5.1

[success] iOS looking great! 👌
[success] Android looking great! 👌

Hi, unfortunately I cannot reproduce your issue, see:

This seems to be different for iPhone / iPad.
Indeed everything works fine on the iPhone, but when I try the same with the iPad simulator the problem exists. Can you try and see if you can reproduce the issue when simulating an iPad?

Thanks, i can reproduce this issue with iPadOS 16.4.

Hi,
maybe I am facing the same issue on MacOS. With Plugin Version >= 4.0.0 an Capacitor 5, I am not able to use the App on MacOS anymore. The App shows correctly at startup, but with the first click anywhere, the App becomes black.
Can you reproduce this as well?
Regards
Tobias

Hi Tobias,
Maybe you can try of my PR fixes your issue as well?
https://github.com/reinventit/privacy-screen/tree/fix-black-screen
Regards,
Rein

Does the problem still exist with the latest version?


[FAQ]Can users click on data points within the VChart to show a list of actions?

How can a data point in the chart be clicked to trigger a display of available actions, just like shown in this screenshot?

解决方案 Solution
通过VChart图表的事件交互可以实现这个功能

注册图表元素的点击事件

通过事件回调参数可以拿到点击事件的信息，例如事件坐标等

渲染一个菜单，菜单中添加你需要响应的操作

This can be achieved through the event interaction of the VChart chart

Register click events for chart elements

Through the event callback parameter, you can get the information of the click event, such as event position

render a menu, add the actions you need to respond to in the menu

代码示例 Code Example
vchart.on("pointerdown", { level: "mark" }, ({ event }) => {
  // show your menu
  event.preventDefault();
  menu.style.display = "block";
  menu.style.left = `${event.pageX}px`;
  menu.style.top = `${event.pageY}px`;
});

结果展示 Results

Demo: https://codesandbox.io/s/click-menu-m42d9j
相关文档 Quote
Event option: https://visactor.io/vchart/api/API/event
Event tutorials: https://visactor.io/vchart/guide/tutorial_docs/Event
github：https://github.com/VisActor/VChart


Create graphs for semester statistics

Explore using D3.js to generate graphs based on semester data about volunteer activity.

I'm interested in learning more about D3 - so I'm interested in this issue.

MVP:

Hvordan vokser de forskjellige gruppene over tid?
Hvor mange work logs kommer inn per dag

Enten som aggregat eller daglig oversikt.

@ericrisbakk Have you been able to look more into this?

Hey, no, I was out of country all of last week because of a family situation, and so time has been limited.
Once I get into it my priority is to figure out:

What SQL query do I need to extract the data I want.
How do I fit that data into a simple D3 graph of some kind.

On that note, I think you mentioned you still need to add some example data to the local repository?


Update LICENSE file to properly include copyright information

This is related to https://github.com/mmkal/expect-type/issues/11.
I was attempting to sync this library to upstream and, again, I'm getting hung up because it doesn't include copyright information.
If you look at the end of the Apache 2 license, there are instructions on how to apply the license which I've followed here.

If desired, we could probably remove the rest of the license file and just include the new lines of the application of the license.
I think explicitly including the whole license after the first part is also OK.

Alright, I am not a lawyer but this looks fine to me!


Unable to build ./clusters/staging directory

This is not a question related to multi-tenancy. I was wondering how the infrastructure.yaml and tenants.yaml inside ./clusters/staging are reconciled. I do not see a kustomization file inside the ./clusters/staging directory. I am unable to build the directory using kustomize build ./clusters/staging/ which is the path used in the main flux-system kustomization.
I get the error Error: unable to find one of 'kustomization.yaml', 'kustomization.yml' or 'Kustomization' in directory '/mnt/c/github/fleet-infra-multitenant/clusters/staging

Nevermind. I found the answer here https://github.com/fluxcd/kustomize-controller/blob/main/docs/spec/v1beta1/kustomization.md#generate-kustomizationyaml


[PE-D][Tester D] Inconsistent constraints on phone number

Error message suggest phone number more than 3 digits long but UG suggests phone number to be strictly 8 digits

Labels: severity.Medium type.FunctionalityBug
original: weeweh/ped#6

Fix validation for phone number


Update Oracle version to 12.2

Hello, I run your awesome Oracle image for my test environment.
When I run SELECT * FROM V$VERSION;, I get the following result:
Oracle Database 12c Standard Edition Release <IP_ADDRESS>.0 - 64bit Production

However, my actual production Oracle DB is running
Oracle Database 12c Standard Edition Release <IP_ADDRESS>.0 - 64bit Production

Turns out that starting from 12.2, identifier names can have up to 128 characters, instead of only 30, which was the limit until 12.1. This prevents me from testing some new tables and columns, which have names longer than 30 characters.
Is it possible to upgrade the base Oracle version to 12.2? I tried upgrading the image in Rancher (I set it up as sath89/oracle-12c:latest), but nothing happeneed, leading mt to believe the latest version of the image is actually 12.1.

Have you tried this one?
https://hub.docker.com/r/sath89/oracle-ee-12c/

Sorry, forgot to answer. I didn't try the EE version as we have decided to just shorten the identifiers to make them fit the 30 characters rule.
However, for future reference, if I have an existing Oracle installation (with many users, configurations, schemas, etc), can I simply switch to the EE version while pointing to the same data directory? Will that work?

I think that you would need to run some migrations.
Reffer to official oracle docs

Thank you. As it's only for testing, I don't think it's actually worth the effort, so I will keep using the 30 char limit.


Compilation fails with parse error on zimfw/input

Describe the bug
Compilation fails on zimfw/input, but if I compile it manually with zcompile, no errors occur. Probably something similar to #263.
To Reproduce
❯ zinit light zimfw/input

Downloading zimfw/input... (as zimfw/input...)

Cloning into '/Users/marlon/.zinit/plugins/zimfw---input'...
▀ ███████████ OBJ: 100, PACK: 67/83, COMPR: 100%
Compiling init.zsh.
.zinit-compile-plugin:45: parse error near `bindkey'
.zinit-compile-plugin:zcompile:42: can't read file: /Users/marlon/.zinit/plugins/zimfw---input/init.zsh
Compilation failed. Don't worry, the plugin will work also without compilation
Consider submitting an error report to Zinit or to the plugin's author.

Versions:

$ZSH_VERSION == 5.8
Operating system name and version: macOS Catalina version 10.15.3 (19D76)

Thanks. it's fixed. The sourced file is intensively using SHORT_LOOPS, so now zcompile is being run after setting this option.