Stopped working | osxphotos --version exception key error 'styles' | really weird

Before submitting a bug report, please ensure you are running the most recent version of osxphotos and that the bug is reproducible on the latest version

If you installed with pip: pip install --upgrade osxphotos => ok

Describe the bug
Out of the blue a simple osxphotos --version or solely osxphotos command gives the following errors.
I have two venv environments for python 3.9 and 3.11 and the same happens!
Did not upgrade/update any of the pythons. They are installed with brew.
Just earlier the nigh export ran smoothly!
Tried

Mac restart. Same error!
uninstall with pip osxphotos and install
python check indicates no issues!
still to try to create a new venv
still to try some update of python with brew? but it seems there is not!

$  osxphotos
Traceback (most recent call last):
  File<EMAIL_ADDRESS>line 846, in items
    d.update(self._sections[section])
KeyError: 'styles'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/MSP/Documents/Apps/osxphotos/venv/bin/osxphotos", line 5, in <module>
    from osxphotos.__main__ import cli_main
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/osxphotos/__main__.py", line 3, in <module>
    from .cli.cli import cli_main
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/osxphotos/cli/__init__.py", line 49, in <module>
    from .cli import cli_main
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/osxphotos/cli/cli.py", line 21, in <module>
    from .exiftool_cli import exiftool
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/osxphotos/cli/exiftool_cli.py", line 26, in <module>
    from .export import export, render_and_validate_report
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/osxphotos/cli/export.py", line 97, in <module>
    from .cli_commands import logger
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/osxphotos/cli/cli_commands.py", line 37, in <module>
    set_rich_theme(get_theme())
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/osxphotos/cli/color_themes.py", line 191, in get_theme
    return get_default_theme()
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/osxphotos/cli/color_themes.py", line 205, in get_default_theme
    theme_manager = get_theme_manager()
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/osxphotos/cli/color_themes.py", line 180, in get_theme_manager
    return ThemeManager(
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/rich_theme_manager/manager.py", line 52, in __init__
    self.load_themes(update=update)
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/rich_theme_manager/manager.py", line 91, in load_themes
    theme = Theme.read(str(path))
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/rich_theme_manager/theme.py", line 316, in read
    return cls.from_file(config_file, source=path, inherit=inherit)
  File "/Users/MSP/Documents/Apps/osxphotos/venv/lib/python3.9/site-packages/rich_theme_manager/theme.py", line 289, in from_file
    name: Style.parse(value) for name, value in config.items("styles")
  File<EMAIL_ADDRESS>line 849, in items
    raise NoSectionError(section)
configparser.NoSectionError: No section: 'styles'
(venv)
$ sw_vers
ProductName:	macOS
ProductVersion:	12.7.2
BuildVersion:	21G1974

To Reproduce
Steps to reproduce the behavior:

What' the full command line you used with osxphotos?
osxphotos --version
What was the error output?
See above.

Expected behavior
The regular operation of osxphotos! That has been operating for months/years now!!!
Screenshots
See above
Desktop (please complete the following information):

OS: Mac Monterey 12.7.2
osxphotos version (osxphotos --version): 0.67.3
It happens with both python 3.9.18 and 3.11.5 (installed with brew)

Additional context
Last upgrade done to the Mac to 12.7.2 was done weeks ago!
Last upgrade osxphotos to 0.67.3 was also done weeks ago!

Try pipx reinstall-all

My guess is this is something homebrew did to break the venv.  I'd first start with a pipx reinstall-all. If that doesn't work, check in~/.config/osxphotos/themes and see if there are theme files there.  cat dark.theme and verify there's a [styles] section:
Should look something like this:
[metadata]
name = dark
description = Dark mode theme
tags = dark
inherit = True

[styles]
bar.back = rgb(68,71,90)
bar.complete = rgb(249,38,114)
bar.finished = rgb(80,250,123)
bar.pulse = rgb(98,114,164)
change = bold bright_red
color = rgb(248,248,242)
count = rgb(139,233,253)

Yup... you's right. the dark.theme file is empty :(
$ ls -l ~/.config/osxphotos/themes/
total 24
25947953 0 drwxr-xr-x  6 MSP  staff   192B May  2  2022 .
25264515 0 drwxr-xr-x  3 MSP  staff    96B Aug  7  2022 ..
25947954 0 -rw-r--r--  1 MSP  staff     0B Jan 20 12:34 dark.theme
25947955 8 -rw-r--r--  1 MSP  staff   621B Jan 20 12:34 light.theme
25947956 8 -rw-r--r--  1 MSP  staff   465B Jan 20 12:34 mono.theme
25947957 8 -rw-r--r--  1 MSP  staff   437B Jan 20 12:34 plain.theme
(venv.new)

Reason why is probably affecting all installs/venvs.
I don't use pipx. With pip tried pip install  --force-reinstall --no-cache-dir osxphotos but same issue.
Created a new python 3.11 venv, installed pipx and then osxphotos... but same result...as expected I guess.
If I try to use another theme it still gives the error as dark.theme is 0 in size.
Recreated dark.theme with your input above and voilá ... it works.

Reinstall does not seem to re-create/cleanup the themes folder.
Life saver! Thanks so much for the quick support/response!

I can see from TM between 12:34 and 12:43 today the file became empty.
Looking at older backups it seems these files are updated each time osxphotos runs.
What I was doing at the time was going over the updated pics in the last run to check their history.
FOLDER=~/Pictures/Pictures/Logs
echo $FOLDER
osxphotos exportdb ${FOLDER}/.osxphotos_export.db --report ${FOLDER}/report.csv 0
mlr --icsv --ocsv filter '$exported == 1 && $updated == 1' then cut -f filename ${FOLDER}/report.csv | sed 's%/Volumes/photo/Family.Photos/%%' | tail +2 |  ( cd ${FOLDER} ; xargs -L1 -IX sh -c 'echo "X"; osxphotos exportdb .osxphotos_export.db --history "X"' )

All is good now!

And I did a few Ctrl-C to cancel... maybe in one of the Ctrl-C it garbled the theme file. Don't know!

That's probably what happened but osxphotos should be more robust in reading the themes.  I'll add an issue to catch errors opening the themes and use default theme if it can't be read.


Fix edge cases

This PR picks up a few issues from running lots of examples: (1) handle zero run/rise in a special case, (2) add a detailed error message in final "else" case of Grid::findIntersections, (3) fix ordering and duplicates in operations::splitAlongGridlines and (4) add failing test cases (not currently enabled).
(1) Zero run or rise happens with horizontal or vertical lines, which are very common in splitting polygons along grid.
(2) The final "else" case in Grid::findIntersections occurs when pN and pE length are not comparable,
comes up with very small or large floats leading to inf/nan.
TODO: find a reproducible example with small/large numbers and think this through.
(3) For the gridline crossings:

sort along axis direction, so points are considered in order
skip duplicate points
skip "touching" points where the line doesn't cross
add guards around two-at-a-time iterator to avoid going out of range

TODO: handle the case where some portion of the boundary extends along the grid line. This is a legitimate case for odd number of crossings:
              |......|
  >>-----o====o------o---
        /............|

Idea: try something like "if the previous crossing (in sorted order) was also the immediately previous point on the exterior, discard it in favour of the current exterior/crossing point".
(4) Failing test cases:
TODO: expect case7 (outputting an extra split around a point on the boundary) and case8 (off-by-a-little floating point) to fail in tests_intersections.cpp line 163

Note that exterior_crossings passed in to splitAlongGridLines should now include all original boundary vertices as well as grid crossing points on the boundary.


verificationKey as base58 and signature helpers to snarkyjs

checkAccountUpdateSignature to verify the signature for an account update
exports the verificationKey of a zkApp account in base58 format

Companion of https://github.com/o1-labs/snarkyjs/pull/421

!ci-build-me

We're using Base64 in the archive database for verification keys, which is faster than using Base58Check.
Encoding time of a key:
BASE58: 0.024964
BASE64: 0.000017

Encoding + decoding time:
BASE58: 0.048735
BASE64: 0.000078

Is it possible to use Base64 in SnarkyJS, so we have uniformity, and best performance?

cc @mitschabaude how much of an issue would it be to use base64 instead? I am not sure how deep that goes in SnarkyJS

seems useful for us to have the base64 {en,de}coder support on the SnarkyJS side given that the protocol is moving towards using this in more places anyway so it's probably worth handling sooner rather than later


Annotations on or in public classes are part of the ABI. This includes:

On the class itself
On any public member (method or field)
On a parameter of a public method.

Resolves https://github.com/autonomousapps/dependency-analysis-android-gradle-plugin/issues/296.

Build failed https://gradle.com/s/5qo6s36smnzl4

Build failed https://gradle.com/s/4ymbexhst2c2c


mini_sockets work on some intervals and not on others

from binance.client import Client
from binance.websockets import BinanceSocketManager
def process_message(msg):
print("message type: {}".format(msg[0]['e']))
print(msg)
if name == "main":
time_interval = 5000
client = Client(None,None)
bm = BinanceSocketManager(client)
conn_key = bm.start_miniticker_socket(process_message, time_interval)
bm.start()
This does not product output, but if i change time_interval to 1000 or 3000 it works just fine. The docs show 5000 as example given. Anyone have any insights on this?
I understand mini_sockets aren't in the official Binance docs so sort of flying blind.

same problem

Same problem here

anyone wanna open a PR for this?


Automated cherry pick of #2877: fix glance save form url save md5

Cherry pick of #2877 on release/2.10.0.
#2877: fix glance save form url save md5

Codecov Report

:exclamation: No coverage uploaded for pull request base (release/2.10.0@fe850f1). Click here to learn what that means.
The diff coverage is n/a.

@@               Coverage Diff                @@
##             release/2.10.0   #2878   +/-   ##
================================================
  Coverage                  ?   7.61%
================================================
  Files                     ?     411
  Lines                     ?   64689
  Branches                  ?       0
================================================
  Hits                      ?    4923
  Misses                    ?   59343
  Partials                  ?     423

Flag
Coverage Δ

#aFlag
7.61% <ø> (?)

Continue to review full report at Codecov.

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

/approve
/lgtm


Create a Prefix

Document and test api/prefixes/create, which creates a prefix to be used to classify BCOs and to determine permissions.

a7b912d


Make Robotium follow Singleton pattern

From<EMAIL_ADDRESS>on January 24, 2011 14:38:52
Actually Robotium wraps UI interactions using the Android's Instrumentation. So once it has access to instrumentation, it can jsut use it.
In my test cases there is a need to have Robotium instance in multiple classes and I dont want to instantiate it multiple times as I dont want to waste memory by carrying more than one robotium isntance for the entire lifecycle of my test.
Could it be possible to make Robotium singleton so that other can also benefit from it.
Original issue: http://code.google.com/p/robotium/issues/detail?id=57

From<EMAIL_ADDRESS>on January 24, 2011 14:48:42
Also when I think more about it, a singleton pattern will help in finalizing all Activities,  because the way Robotium finalizes is by keeping track of all the activities it has encountered during the life time of a test.
Now with more than one solo instances in a complex test case, not all instances will know of all the activies depending on which instance is used where in the test case.
Obviously test case will call finalize on one of the solo instances which might not clean up all the activities. You can argue that I will make activitylist static, but I believe that making Robotium follow Singleton would be better.
Thanks

From<EMAIL_ADDRESS>on January 24, 2011 22:12:01
You can easily just use one instance of Solo if that is what you want. You are not required to make new instance for every test case.
Changing it to a singleton will introduce a lot of issues, it would break all backward compability. Thanks for the idea though. Its an interesting point.
/Renas
Status: Invalid

From<EMAIL_ADDRESS>on December 05, 2012 05:57:57
How can we use one instance solo for every test cases?  Would you show the sample code,please?
K


Jarvis detect HotWord, but doesn't commands

Description
Jarvis detects the hotword great, but when I try to say something is like it doesn't hear me... I configured Bing to recognize the commands with the api key inserted on Jarvis config.
As you can see there's nothing configured on Jarvis. I've just downloaded and installed in a new Raspberry Pi 2.
Thanks!
Logs
Jarvis: Si señor
DEBUG: stop_speaking hook
User defined commands:
*AIDE*			*BONJOUR*|*SALUT*	*COMMENT*APPELLE*
*MERCI*			*AU REVOIR*|*BYE*	ANNULE*|TERMINE*
ENCORE*			*TEST*			*VERSION*
*REPETE (*) ET (*)	*CA VA*			>*OUI*
>*NON*|*PAS*
Jarvis: Waiting to hear 'Jarvis'
Maestro: (listening...)
DEBUG: models=jarvis
INFO:snowboy:Ticks: [2, 20, 5, -1]
INFO:snowboy:Keyword 1 detected at time: 2018-05-07 21:57:09
INFO:snowboy:Ticks status: 2 1 1 1
DEBUG: modelid=0
Jarvis
DEBUG: entering_cmd hook
Maestro: (listening...)
DEBUG: start_listening hook
utils/timeout.sh 10 rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% pad 0.5 0.5 trim 0 5
DEBUG: speech duration was 50 (10 = 1 sec)
WARNING: too long for a command (max 4 secs), ignoring...
HELP: try in order the following options
1) wait longer between voice commands
2) reduce ambiant background noise
3) decrease mic sensitivity in Settings > Audio
4) increase Min Silence Level to Stop
DEBUG: stop_listening hook
(listening...)
DEBUG: start_listening hook
utils/timeout.sh 10 rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% pad 0.5 0.5 trim 0 5
DEBUG: speech duration was 50 (10 = 1 sec)
WARNING: too long for a command (max 4 secs), ignoring...
HELP: try in order the following options
1) wait longer between voice commands
2) reduce ambiant background noise
3) decrease mic sensitivity in Settings > Audio
4) increase Min Silence Level to Stop
DEBUG: stop_listening hook
(listening...)
DEBUG: start_listening hook
utils/timeout.sh 10 rec -V1 -q -r 16000 -c 1 -b 16 -e signed-integer --endian little /dev/shm/jarvis-record.wav gain 0 silence 1 0.1 1% 1 0.5 1% pad 0.5 0.5 trim 0 5
^C
DEBUG: program_exit hook

Hi, what is the begining of the log, when you start Jarvis ?


SAK-32303 Allow stopping of some jobs

Don't allow concurrent execution of the AuthzGroupProviderSync job as it doesn't make sense. Locally we've back an issue where multiple copies of this job were running concurrently and killing system performance. Also allow jobs to be stopped from the administration interface for some of the long running jobs.
We need to switch to spring injected jobs to allow stopping as you need a different instance of the jobs for each run to be able to cancel the correct one.

If we have a site with a provided membership and nobody logs into Sakai who is a member of that site the membership won't get re-updated from the provider.
If someone then sends an email to that site or an automated announcement happens it will be sent to all the members of the site.
We run this job to ensure that every site is updated at least once a day from the provider.

I think this needs to have bean aliases so that the old jobs continue to work.

Actually it's more complicated, because all the old jobs had the same job class we need to look inside the actual job data and because this is a blob in the DB (yey) we can't just do this with SQL migration. Doing it at the startup of the job schedules seems sensible.

I would probably just provide some migration where the old jobs are removed and then you add this to the release notes that if your using these jobs you need to recreate them.

Ok, written some migration code, just need to test so don't merge yet.

Yep, and the migration works in my local testing.


Bane of the Stricken and Zodiac are now fully dynamic

The current simulator behavior is correct only for the 2.3.
Example before : using Hammer of the Ancient with the Bracers of the First Men resulted in only one BotS stack every 2 hits, because it had an internal CD snapshotted to your default Attack Speed.
That's why you had to "potion snapshot" with a stacked legendary Pain Enhancer gem.
That was also the case with the OrotZ in 2.2, and probably to a certain extent in 2.3.
I tested the current 2.4 behavior, and I can confirm that now BotS always stacks once per hit. 100 hota hits = 100 stacks, with or without the bracers. I tested it on Live yesterday, using rend to see the damage difference before and after the 100 hota hits.
Zodiac procs are also always dynamic, the proc rate is changing in real time if you have 1 or 50 mobs around you with Pain Enhancer (confirmed with a 60 fps video).
So I'm pretty sure BotS and Zodiac are fully dynamic. That's why they should proc once every 3 WW hits for example (instead of 6 as in the current sim, at least for BotS).
If anyone is playing another class that greatly rely on those 2 items can confirm that their behavior has been updated, that's be cool :)

Keep in mind that the ICD changed from ceil(0.9 * 60 / APS) to ceil(0.9 * FPA), with APS being your sheet APS and FPA being the Frames Per Attack of the skill that last added a BotS stack.
This means in practice that you can get unlucky with a skill with a secondary animation, because they might make the internal cooldown and your attacks desync.

Thanks for your input.
How having BotS ICD be always inferior to your last action time could cause a desync ?
Do you have any link related to the new BotS math in 2.4, I didn't find anything on reddit or the official forums about this new formula.
Anyway the current simulation only adds one stack every 3 hota hit, so changing it to one stack per hit should be a lot more accurate.

I tested this on a wizard with Spectral Blade (+125% IAS from Fragment of Destiny and Shame of Delsere) and Arcane Orbit... when you got Arcane Orbit to proc Bane of the Stricken, it wouldn't proc from Spectral Blade for the next 2 casts.
This change has been announced by Wyatt Cheng on the forums and has been made for Bane of the Stricken, Obsidian Ring of the Zodiac and Chantodo's Resolve. I don't know if they changed it for any other items, but these are what he talked about in the PTR Feedback forums at least.

I see, so yes in the case where you cast a short FPA skill after a slow one, you can skip 1 or 2 stack of BotS.
Implementing this behavior in the sim would be great, but simply changing it to 1 stack would already be an improvment :)

It really only happens with skills that have a delayed hit because of slow missiles (like Arcane Torrent) or spells with a secondary cast animation (like Explosive Blast), but you can manage to do it quite often by accident, so I think it matters for the simulator.

It should already work for BotS (I fixed it around a week ago), will add to the other two I suppose.

Uh currently OROZ and Chantodo's are implemented without an ICD, but rather as having a limit per cast. OROZ can only proc once per cast, and Chantodo's can proc 3 times. I'm not sure if that is the correct behavior, but I can try to dig up some discussions that led to this decision. By the way, the game data does not list any ICD values for these effects:
http://www.d3local.com/powers/ItemPassive_Unique_Ring_920_x1 (OROZ)
http://www.d3local.com/powers/P3_ItemPassive_Unique_Ring_021 (Chantodo's)

That's very interesting, considering Wyatt Cheng listed all of these in the same thread. Considering they all worked the same way before I assumed they would also work like the updated Bane of the Stricken.

You mean they used to have an ICD? I honestly don't know, its been a while since I made those. I think Chantodo's was researched on the wizard forums when 2.3 was on PTR, I probably picked that up there.

They were snapshottable the same way you could snapshot Bane of the Stricken... It was essentially why Vyr's wizard cleared 84 in season 4, because they used all of them. IIRC Vyr's 6pc worked the same way, but limited to 3 stacks per attack.

Thank you for your correction, BotS now correctly stacks once per hit in the sim.
Except when you use the Slaughter Rune of Wrath of the Berserker. It still only stacks once every 2 or 3 hits.
I just checked in game just to be sure, hitting 100 times a mob with slaughter active, but there isn't any weird behavior, so it's just a bug of the sim.

Oh, that's an interesting point. Currently, Slaughter (in the simulator) is considered to trigger from WotB, which uses the default attack speed, so if you proc it with the speeded up HotA, it might block the procs from the next few hits. If you're saying that it doesn't have this effect in the actual game, it is possible that all such procs use the speed of the actual attack that triggered it. I'm trying to find a way to make it work that way with my current system.

This is very interesting, are there any procs other than Slaughter with a proc coefficient which can throw this off?

Well, I previously hit 100 times a mob, but not by continuously pressing the HotA skill : I was waiting a little between each hit to be sure I was counting correctly.
So I redid some test by letting the HotA skill pressed, but I find the same result every time :
100 hota hits with wotb active or not, and with either the insanity or the slaughter rune = always 100 BotS stacks.
I also tested it in 2H or DW to confirm there's no different behavior.
No buff was used except WotB.

Yeah pretty much everything that triggers and deals damage with nonzero proc coefficient will throw off the simulation currently, I guess that needs fixing.

Could this explain the fact that Battle Rage Bloodshed is under performing a lot in the sim with HotA compared to live ? I was going to open an issue about that.
If I can kill a very dense pack of 50 skeletons with no AD and no Bloodshed in 50s, simply using Bloodshed drop the time down to 10s, meaning Bloodshed has done 80% of the damage.
But in the same situation with this settings in the sim :

spread 18
size 2.5
globes/min with reaper's for rage
whites 50
Bloodshed is only at 40% of the damage done, meaning the sim DPS is 3 times inferior to what's really happening on live.

I see the problem with Bloodshed, it seems to ignore the number of targets hit (and crit chance, too).
c53690e1a4f2d046cdb40b8e58a77a6ac855aa29

The bloodshed change is live, the damage is now a lot more realistic, thanks !
But could you change the Cleave's Broad Sweep rune to have the correct proc coefficient ? It seems to be the same 0.667 that the other ones instead of 0.4.
A lot of info about barb's proc coefficient are in this master Nubtro topic :
http://us.battle.net/d3/en/forum/topic/18719273416

After some further testing, bloodshed seems to not take into account proc coefficients.
If I sim a WW barb hitting 2 targets with infinite rage, bloodshed is representing 10% of all the damage done, which can only mean it procs on 100% of the crits, considering it will only hit the other target.
I tested in game with bash :

with no rune, 1 crit = 1 proc on the other target 100% of the time
with the pulverize rune, 1 crit = 1 proc every 3 hits on average on the other target, which corresponds to the 0.333 coefficient found by Nubtro.

Should it take proc coefficients into account then? That seems really strange, as its already doing damage based on the actual damage done, so making it consider proc coefficient makes no sense as it punishes faster hitting attacks for no reason. So it definitely works like that in-game then?

Yes, I tested it thoroughly with 2 mobs : the lower the proc coefficient, the less bloodshed is useful.
I also did multiple sessions of testing on very dense skeletons packs in the Crypt of the Ancients to see the behavior of multiple AE skills.
What is certain, is that Bloodshed is incredible for HotA, but at best average for whirlwind.
With no AD, it's ok, but with high AD (100+), bloodshed benefit is hardly noticeable, because it doesn't proc AD. By hardly noticeable I mean that if I killed 20 mobs out of 50 in 30s without, I killed them in 28 or 29s with. This behavior is not specific to the 2.4, some quick test in 2.3 a few months back already showed this behavior with whirlwind.
That's why I never really understood why top leaderboard barbs in the previous season were using bloodshed in WW builds while stacking 150+ AD, because actual in game testing shows nearly no dps gain for a lot more density lag.
On the other hand, WotB Slaughter, which also depends on proc coefficient, does seem to proc AD, and so is always incredible on high density packs (but it's even worse density lag wise).

WotB Slaughter has an actual proc coefficient (of 0.25), so it indeed procs AD.
I think I've fixed Slaughter+BotS, and added proc coefficient into consideration for Bloodshed.

Can someone help out with testing OROZ, Chantodos and Gogok cooldown mechanics? It seems that they follow a similar pattern, but Chantodos always stacks faster than Gogok so I'm not sure what causes the difference.

Ok I did some testing myself, results are here: https://docs.google.com/spreadsheets/d/1Ftdzee5uafJgS3phu9LSX5FPzmc30FxejfR9r6bRPx8/edit#gid=2044139806
I simply held down AT (discharge) and periodically used Nova.
First 4 columns are time when various effects proc'd. Column E indicates when I used FN. F&G are stack counters, I is attack speed, and M/N/O are times between procs (chantodos column ignores FN uses here).
What I'm getting is that Gogok has fixed 0.9 second ICD, OROZ has a cooldown that scales with APS, and Chantodos either has no ICD at all, or its ICD is per-skill, since every time I used FN it gave a stack independently of stacks gained from AT.

Chantodo's behaviour changes if you pot/zone after your sheet APS changed. You can also get double procs from Arcane Torrent (Static Discharge) if you're lucky.

Didn't they fix it?

Does the Zodiac  cooldown (that seems to scale with APS) work the same way for channeled and non channeled skills?
Zodiac is weird. Last I read was that it was supposed to have no ICD and proc exactly once per cast that deals any damage.


[1.12.2] Conflicts with fluid registrations

Minecraft Version:

1.12.2
Forge Version:
2517 (and any other)
LibVulpes Version:
0.2.6-8

Explain issue in detail:
Things go badly if another mod also registers the same fluids that this one does, so something should be done to prevent duplicate registrations.
I will probably submitt a PR along the lines of the following:
        boolean otherO2 = false;
        boolean otherH2 = false;
        boolean otherN2 = false;
        boolean otherH2O2 = false;
        //Fluid Registration
        AdvancedRocketryFluids.fluidOxygen = new FluidColored("oxygen",0x8f94b9).setUnlocalizedName("oxygen").setGaseous(true);
        if(!FluidRegistry.registerFluid(AdvancedRocketryFluids.fluidOxygen))
        {
        	AdvancedRocketryFluids.fluidOxygen = FluidRegistry.getFluid("oxygen");
        	otherO2 = (AdvancedRocketryBlocks.blockOxygenFluid =  AdvancedRocketryFluids.fluidOxygen.getBlock()) != null;
        }

        AdvancedRocketryFluids.fluidHydrogen = new FluidColored("hydrogen",0xdbc1c1).setUnlocalizedName("hydrogen").setGaseous(true);
        if(!FluidRegistry.registerFluid(AdvancedRocketryFluids.fluidHydrogen))
        {
        	AdvancedRocketryFluids.fluidHydrogen = FluidRegistry.getFluid("hydrogen");
            otherH2 = (AdvancedRocketryBlocks.blockHydrogenFluid =  AdvancedRocketryFluids.fluidHydrogen.getBlock()) != null;
        }

        AdvancedRocketryFluids.fluidRocketFuel = new FluidColored("rocketFuel", 0xe5d884).setUnlocalizedName("rocketFuel").setGaseous(false);
        if(!FluidRegistry.registerFluid(AdvancedRocketryFluids.fluidRocketFuel))
        {
        	AdvancedRocketryFluids.fluidRocketFuel = FluidRegistry.getFluid("rocketFuel");
            otherH2O2 = (AdvancedRocketryBlocks.blockFuelFluid =  AdvancedRocketryFluids.fluidRocketFuel.getBlock()) != null;
        }

        AdvancedRocketryFluids.fluidNitrogen = new FluidColored("nitrogen", 0x97a7e7);
        if(!FluidRegistry.registerFluid(AdvancedRocketryFluids.fluidNitrogen))
        {
        	AdvancedRocketryFluids.fluidNitrogen = FluidRegistry.getFluid("nitrogen");
            otherN2 = (AdvancedRocketryBlocks.blockNitrogenFluid =  AdvancedRocketryFluids.fluidNitrogen.getBlock()) != null;
        }

        AtmosphereRegister.getInstance().registerHarvestableFluid(AdvancedRocketryFluids.fluidNitrogen);
        AtmosphereRegister.getInstance().registerHarvestableFluid(AdvancedRocketryFluids.fluidHydrogen);
        AtmosphereRegister.getInstance().registerHarvestableFluid(AdvancedRocketryFluids.fluidOxygen);

        if(!otherO2)
        AdvancedRocketryBlocks.blockOxygenFluid = new BlockFluid(AdvancedRocketryFluids.fluidOxygen, Material.WATER).setUnlocalizedName("oxygenFluidBlock").setCreativeTab(CreativeTabs.MISC);
        if(!otherH2)
        AdvancedRocketryBlocks.blockHydrogenFluid = new BlockFluid(AdvancedRocketryFluids.fluidHydrogen, Material.WATER).setUnlocalizedName("hydrogenFluidBlock").setCreativeTab(CreativeTabs.MISC);
        if(!otherH2O2)
        AdvancedRocketryBlocks.blockFuelFluid = new BlockFluid(AdvancedRocketryFluids.fluidRocketFuel, new MaterialLiquid(MapColor.YELLOW)).setUnlocalizedName("rocketFuelBlock").setCreativeTab(CreativeTabs.MISC);
        if(!otherN2)
        AdvancedRocketryBlocks.blockNitrogenFluid = new BlockFluid(AdvancedRocketryFluids.fluidNitrogen, Material.WATER).setUnlocalizedName("nitrogenFluidBlock").setCreativeTab(CreativeTabs.MISC);

        if(!otherO2) LibVulpesBlocks.registerBlock(AdvancedRocketryBlocks.blockOxygenFluid.setRegistryName("oxygenFluid"));
        if(!otherH2) LibVulpesBlocks.registerBlock(AdvancedRocketryBlocks.blockHydrogenFluid.setRegistryName("hydrogenFluid"));
        if(!otherH2O2) LibVulpesBlocks.registerBlock(AdvancedRocketryBlocks.blockFuelFluid.setRegistryName("rocketFuel"));
        if(!otherN2) LibVulpesBlocks.registerBlock(AdvancedRocketryBlocks.blockNitrogenFluid.setRegistryName("nitrogenFluid"));

Modified in the registerBlocks event handler in AdvancedRocketry.java, around line 900.
I noticed this issue when trying to use Advanced Rocketry and Nuclearcraft together, and forge warned about the duplicate fluid registration, and then the jetpack wouldn't work properly.  I will try to get the jetpack working with nuclearcraft installed before submitting a final PR.

The workaround to getting the jetpack to work with the missmatch is to change the check here:
https://github.com/zmaster587/libVulpes/blob/1.12/src/main/java/zmaster587/libVulpes/util/FluidUtils.java#L22
To using this method here: https://github.com/zmaster587/libVulpes/blob/1.12/src/main/java/zmaster587/libVulpes/util/FluidUtils.java#L110
But the cause of the missmatch should probably also be fixed.

Yeah, will definatly do.

Is this still a issue? Please comment if it is and i will reopen if if you are unable? We are closing old issues to see what is still relevant and needs to be fixed.


IP and port number

Where can I find the IP and port number??

It should be in your Emulator setting.
In Bluestacks 5, You will find it in Setting -> Advanced -> Android Debug Bridge


switch to delayed-ack-01

Other implementations are likely going to roll out -01. Before that, we need to switch to that too, otherwise we'd lose interop.

@hfujita Thank you for the review. Merging.


TSC Agenda 2022-01-11

TSC Meeting Details
Date/time: 2022-01-11 @ 3PM UTC (8am Pacific)
Location: Discord tac-tsc voice channel

https://github.com/o3de/o3de/discussions/6718

Third Party OSS Dependency Proposal https://github.com/o3de/tsc/discussions/7

I'd also like to talk briefly about rules & regulations around trademark usage of O3DE. We currently seem to have no clear guidelines on this.

I'd also like to talk briefly about rules & regulations around trademark usage of O3DE. We currently seem to have no clear guidelines on this.

https://lfprojects.org/policies/trademark-policy/

Example for one System on its own wiki/github page that is published for discussion:
Graphics Rendering Subsystem

Subsystem
Detail
Feature
Code
Release
Link
Doc

Rendering

Directx12

RFC/Detail
Link

Vulkan
🟡 Partial
🟢 Stable
🟠 Volatile

Link

Metal
🟡 Partial
🔴 Unstable
🔴 Untested

Link

UberRender
🟠 Basic
🟠 Volatile
⭕ Unknown

Link

Raytracing

Directx12

Link

Vulkan

Link

Metal

Link

Anti-Aliasing

Link

MSAA

SMAA

TAA

Shaders

HLSL

AZSL

OLDZSL

🟢 Complete
🟤 Deprecated
🟢 Released

Global Illumination

Forward+

Deferred

Hybrid

Lighting

Directional

Point

Global Sky

Area

Forward shading

Diffuse Probe Grid

Reflection Probes

Subsurface Scattering

Exposure / Eye Adaptation

HDRI Skybox

Decal

PostFX

Tonemapping

Color Grading

Post-Process Volumes

Bloom

Deferred Fog

Depth of Field

SSAO

Unicode Colors and objects that work in Github Markdown
🔴🟠🟡🟢🔵🟣🟤⚫⚪🔘🛑⭕
🟥🟧🟨🟩🟦🟪🟫⬛⬜🔲🔳⏹☑✅❎
❤🧡💛💚💜💙🤎🖤🤍♥💔💖💘💝💗💓💟💕❣♡
🔺🔻🔷🔶🔹🔸♦💠💎💧🧊
🏴🏳🚩🏁
◻◼◾◽▪▫


SM3 acceleration with SM3 hardware instruction on aarch64

SM3 hardware instruction is optional feature of crypto extension for
aarch64. This implementation accelerates SM3 via SM3 instructions. For
the platform not supporting SM3 instruction, the original C
implementation still works. On modern infrastructure hardware with this
instruction we see performance improvements ranging from 35-65%.

Checklist

[ ] documentation is added or updated
[ ] tests are added or updated

Great job, thanks for your patch, we did some performance benchmark testing,
The following is the performance data:
Benchmark on T-Head Yitian-710 2.75GHz:
Before:
type  16 bytes     64 bytes    256 bytes    1024 bytes   8192 bytes   16384 bytes
sm3   49297.82k   121062.63k   223106.05k   283371.52k   307574.10k   309400.92k
After (33% - 74% faster):
type  16 bytes     64 bytes    256 bytes    1024 bytes   8192 bytes   16384 bytes
sm3   65640.01k   179121.79k   359854.59k   481448.96k   534055.59k   538274.47k
Tested-by: Tianjia Zhang<EMAIL_ADDRESS>

I'd like to see someone review the assembler code (does not need to be an OpenSSL committer, just someone familiar with aarch64 assembler).

I'd like to see someone review the assembler code

Maybe @daniel-hu-arm?

i have reviewed the assembly code, looks good to me.

@zorrorffm @daniel-hu-arm The latest force-push commit deletes the benchmark data on Neoverse N2, can it be restored? and Keep the benchmark data of Neoverse N2 and Yitian in the commit message at the same time, the same as SM4. Thanks.

@uudiin Sorry, the platform on that we run perf test is not public so far, we are not allowed to post its concrete perf data.

@uudiin Sorry, the platform on that we run perf test is not public so far, we are not allowed to post its concrete perf data.

Got it, is it possible to put Yitian's performance data on commit message? This data can now be made public.

@uudiin Sorry, the platform on that we run perf test is not public so far, we are not allowed to post its concrete perf data.

Got it, is it possible to put Yitian's performance data on commit message? This data can now be made public.

Ok, thanks to you for testing and reporting performance number above,  we will add Yitian perf data into commit message as the justification of this PR.

Merged to master. Thank you for your contribution.


Supergroup creation date

Is there method to get supergroup's creation date?
I can get creator's join date, however this date resets if creator leaves and then rejoins the group
Thanks

https://core.telegram.org/tdlib/docs/classtd_1_1td__api_1_1supergroup.html#a0d05d30cefafcef62fd96cbcbaf4e3d1

I found messageChatUpgradeTo, potentially if I get this type of message from original basic group it could be possible to recover the creation date.  Is there way to get original basic group to examine its last message?

A supergroup can be created directly and not converted from a basic group.
If you want to get first chat message, see https://github.com/tdlib/td/issues/195#issuecomment-380836359.

nice! date of the first message also suits


Make inspector select the correct resource after making them unique

Make inspector select the correct resource after making them unique.
This fixes #20684

Thanks!


key_pair.Signature vs transactions.Signature

There are Signature types right now in nearlib, which should be somehow simplified. It makes documentation about offline signing not very consistent (also transactions.Signature is not exported, but is needed for SignedTransaction construction).

@ilblackdragon  Does the PR fully address the issue? Can we close it?


fix: Save Art: make it more user-friendly

[x] Bugfix

Needs Design check

@exezbcz please review

Needs QA check

@kodadot/qa-guild please review

Context

[x] Closes #10199
[x] Requires deployment <worker/stick/speck>

Before submitting pull request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've tried to respect high code quality standards
[x] I've didn't break any original functionality

Optional

[x] I've tested it at </ahp/collection>

[ ] I've tested PR on mobile

[x] I've written unit tests 🧪

[ ] I've found edge cases

[x] Are you at Koda Ecosystem Telegram?

Screenshot 📸

[] My fix has changed **

** on UI; a screenshot is best to understand changes for others.

image from canary:

image from this pr:

Both 119kb, 300pxX300px, same quality

Hello,Daiagi, Could you explain about it more detail?

The issue is about having a quick easy way to download full quality image, without opening the image in full screen.
I have tested your pr and found that the image quality downloaded is the same as it was before.
Therfore, this pr does not solve the issue

To improve image quality while downloading, especially when using JavaScript, you can consider the following approach:
Use high-resolution images: Make sure you are using a high-resolution image as the source for your download. High-quality images naturally provide better clarity and detail.
Compression Optimization: Compresses images in a way that maintains high quality. This may include using modern image formats such as WebP or efficient compression algorithms to reduce file size without sacrificing visual fidelity.
Dynamic Image Rendering: Dynamically render images at higher quality before downloading. Before starting the download process, leverage HTMLCanvasElement and Context2D API to manipulate and enhance image quality as needed.
So I drew an image on a canvas. We then use the nuxt/image module to compress the image into Webp.
As a result, image size was reduced from 121 kbytes to 30 kbytes and image quality was improved.

Now the quality is way worse and a better UI solution was not provided.
Also, we do not welcome chatgptesque comments, closing PR.


Auto Playlist?

I'm just wondering if there is any chance you guys could add an auto playlist to this bot, so it can just be constantly playing music from Youtube music etc, or Soundcloud.
Thanks.

just add songs you like and type !m rpl, there won't be any automatic playing of random songs added.


Create a template without HTML tags

The problem:
Some platforms (like bitbucket) does not support HTML tags in markdown. See #60
Solution:
The solution would be to create a second template named no-html that generates the same README content as the default one, but without HTML tags.
When you start the command npx readme-md-generator, it would display the list of available template, and you would be able to choose the one you want (use inquirer list for this feature) :
Example :
npx readme-md-generator
? Choose a template
> default.md (the default readme-md-generator template)
  default-no-html (the default readme-md-generator template without html tags)

If it's possible I wanna give this a try

Hi @nourkilany,
Thanks for your interest
Unfortunately I'm already assigned to this issue and it's almost done 😉
Feel free to check other good first issues if you want to contribute.

I really like this project and the effort you put into it. I'll avidly wait for a good first issue that I can fix.

Thanks @nourkilany


How to disable side menu for particular view

New Issue Checklist

I have read the guidelines for contributing and I understand:

[x] My issue is happening in the latest version of SideMenu.
[ ] My issue was not solved in the README.
[ ] My issue can not be answered on stackoverflow.com.
[ ] My issue is not a request for new functionality that I am unwilling to build and contribute with a pull request.
[ ] My issue is reproducible in the demo project.

Issue Description

How to i disable gesture or hide side menu for particular view controller??

Everything you need to know is in the README.


chore: release master

:robot: I have created a release beep boop
all-components: 1.1.0
1.1.0 (2023-06-03)
Features

initial input component (#12) (5f1024f)

input: 1.0.0
1.0.0 (2023-06-03)
Features

initial input component (#12) (5f1024f)

allaround-components: 1.2.0
1.2.0 (2023-06-03)
Features

initial input component (#12) (5f1024f)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/wholesome-ghoul/allaround-components/releases/tag/allaround-components-v1.2.0 :sunflower:

:robot: Release is at https://github.com/wholesome-ghoul/allaround-components/releases/tag/all-components-v1.1.0 :sunflower:

:robot: Release is at https://github.com/wholesome-ghoul/allaround-components/releases/tag/input-v1.0.0 :sunflower:


Feature:  Kubernetes & Helm chart

Feature Description

After PR #149 is merged, there should be some traction on wanting an Helm chart for k8s deployment.
Is your feature request related to a problem? Please describe.
Not really at this time

Environment & Use Case
Environment is an k8s cluster running on Raspberry Pi's with one AMD64 worker.
Kubernetes is getting more and more popular, and this would help people using Hyperglass as well if it could be installed onto an k8s cluster quite easilly.

 If this is something the community would collectively benefit from, I would welcome a PR that implements a helm package for hyperglass with testing, from a maintainer that's willing to keep up with any future updates/issues.


[Proposal] Separate Page Cache by page type

Currently, all types of pages (including DATA_PAGE, INDEX_PAGE, DICT_PAGE, SHORT_KEY_PAGE) in segment_v2 are cached by StoragePageCache in one single memory space. In many query situations, we expect to reuse the index pages in cache, but which are probably replaced by the large amount of data pages due to the LRU algorithm. Even in some extreme cases, the high frequency of LRU replacement usage caused by data pages will bring great pressure to the system.
A separated page cache could be used to solve this problem.
Implementation:

Change the "_cache" member of StoragePageCache class into "_data_cache" (for DATA) and "_index_page" (for INDEX, DICT, SHORT_KEY) and Add an "_index_cache_ratio" member as for the ratio of index cache.
Add a configuration item "index_cache_ratio" to set the ratio. The range is: 0 <= ratio <= 1, 0/1 stands for only data/index pages are cached.
Add "page_type" as an argument when reading pages, so that the StoragePageCache could use it to allocate the cache.

Advantages:

By separating data and index pages, the hit rate of index pages could be highly improved and by tuning the ratio the hit rate of data pages will not be much decreased.
By setting the config::index_cache_ratio (including 0 or 1), users can adapt the cache ratio to fit their query situations.

it looks wonderful!


checkers pattern

Added checkers effect pattern, starburst up next

Merged! Thank you!!
On Mon, Aug 22, 2022, 5:34 PM Jake Fuentes @.***> wrote:

@jakefuentes https://github.com/jakefuentes requested your review on:
#38 https://github.com/pitzer/funky_lights/pull/38 checkers pattern.
—
Reply to this email directly, view it on GitHub
https://github.com/pitzer/funky_lights/pull/38#event-7237351222, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AALKYX5IUKS4ZRX45WOTMXLV2QMCXANCNFSM57JRLWRQ
.
You are receiving this because your review was requested.Message ID:
@.***>


libpcre.so.1: cannot open shared object file: No such file or directory

Hi,
We are getting below error while executing method(scan_file(file_path)) in clamav.py
./bin/clamscan: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

Having an issue reproducing. Can you confirm how you created the archive you uploaded to AWS?

I had the same issue - I built it using the build_lambda.sh directly on a vm that had clamAV on it. I worked around it by finding the file in here:
ls /lib64/ | grep libpcre.so.1
And then adding it to the zip file in the ./bin/ directory.
Thanks for putting this repo up @denniswebb, much appreciated

Thanks @chrisgilmerproj for fixing issue.


Deploy app artefact sync

Necessity
We have an existing process where a Jenkins job called Deploy_Apps creates a Go language binary file under an S3 bucket for the relevant environment. For example govuk-integration-artefact. When we build another environment, for example Staging, then that binary file should be available in the environment specific bucket for the new build. For staging , it will be  govuk-staging-artefact. Hence, we need a mechanism to promote the binary file accross environments.
Concept
We create a mechanism that will be aware when a new file gets created.

We will create an SNS topic in the environment where the binary file will be created.
We create an S3 bucket notification event and associate it to the bucket that will get the new file.
The S3 bucket event will be associated to the SNS topic.

We create a mechanism that can know when the new file is created and retrieve the file.

We create a Lambda function that can copy a file from another S3 bucket.
We create an SNS Subscription that subscribes to the SNS Topic at the source.
We associate the SNS Subscription to the Lambda function.

When a new file gets created, the following will happen.(We will use Integration(INT) as source and Staging(STG) as destination)
New file -> INT SNS Topic notified -> STG Subscription alerted -> STG Lambda function syncs the file
Working Components
Lambda Files
The lambda related files are stored in terraform/lambda/ArtefactSync.
Terraform Resources
There are number of terraform resources that work together to complete the functionality.
govuk-artefact-bucket-policy
This resource assigns an S3 bucket policy. The policy will restrict access and allow the AWS Integration and Staging account access to the artefact bucket.
artefact_topic
This resource creates an AWS SNS Topic in the source environment.
artefact_topic_policy and artefact_sns_topic_policy
artefact_sns_topic_policy  is the actual policy that give Lambda related permissions to interact with AWS SNS. artefact_topic_policy acts like a policy attachment to the SNS topic.
artefact_bucket_notification
This resource links the S3 Bucket Event to the SNS Topic.
artefact_topic_subscription
This resource is the SNS Subscription at the target location. Also, this resource will associate to the Lambda Function at the source location.
artefact_lambda_function
This resource creates the Lambda function and connects to the relevent IAM role.
govuk_artefact_lambda_role
This resource allows the Lambda function to assume the relevant IAM role.
govuk_artefact_policy
This resource will create an IAM policy. This policy will allow logs to be written to CloudWatch, during the Lambda function's activity.
govuk_artefact_policy_attachment
This resource is used to attach the IAM Role and IAM Policy used by the Lambda function.
govuk_artefact_lambda_sns
This is the resource that allows the SNS Subscription to trigger the Lambda Function and cause the execution.
Solo: @suthagarht

Without looking at what has changed, this has created quite a few resources without any context on the changes themselves. Please can you write a more detailed commit message so someone in the future has an understanding on how it works, and importantly why it has been implemented in this way.

Great detail! Please can you update the commit message itself rather than just the PR. Commit history is long term, whereas PR comments should provide a summary of the commits themselves (obligatory link to blog post).
I think the "Necessity" and "Concept" sections are only really required for a commit message, as you detail the stages of the process. People should hopefully be able to understand the resources and how they are used by looking at the code itself.
Otherwise excellent detail!

Please can we also ensure we update the README as per the styleguide.

I noticed you've updated the commit message, so thank you, but please can we ensure the title of the commit is descriptive? At the moment it is titled "Necessity" which doesn't help someone looking through the commit history.
If someone wanted to check the last 10 commits for example then it's useful to briefly understand the context of the commit:
🐮  ~/govuk/govuk-aws git:(master) git log --oneline |grep -v Merge |head
672b47e Remove email-alert-api CNAME
c9167c0 Add verbose error for no backend file
6884b1d Only ask for MFA on assume-role once in 12 hours
442bd30 Add new machines for email-alert-api
ccb9084 Add note about Puppet librarian
2ef01a3 Fix build script
a0edeb6 Increase backend-redis to cache.m3.large
ec2d8f6 Allow backend machines access to graphite
04783c2 Fix if statement syntax in the jenkins.sh that runs Terraform
83a29b3 Git clone using SSH

A good title could be something like "Create method to promote artefacts between envs", for example.
I would also hesitate to list all the different resource types as hopefully the code should document their functions well enough.

hi @surminus . Thank you for checking. I have now included a relevant heading.

Thanks for adding the note! It might be worth a review from someone else to get context on the change as well.


new AKS cluster provisioned with NC series VMs do not come with the connector that allows scheduling GPU resources

Addressed in #43 for PyTorch


Cannot iterate table if there is no key value

Description:
If a table is created without a key-value, that table cannot be iterated. However, if there is a key-value it works without any issue. It should be possible to iterate a table with/without key value.
Steps to reproduce:
Run the following example.
import ballerina/io;

type Employee record {
    readonly int id;
    string name;
    float salary;
};

table<Employee> data = table [
        { id: 1, name: "Mary", salary: 300.5 },
        { id: 2, name: "John", salary: 200.5 },
        { id: 3, name: "Jim", salary: 330.5 }
    ];

public function main () {
    int i = 0;
    foreach var v in data {
        io:println(v);
    }
}

@MadhukaHarith92 Please check this fix locally
Fix_for_table_iteration.txt

@MadhukaHarith92 Please check this fix locally
Fix_for_table_iteration.txt

Fix worked locally.


Add item apis

Could someone take a look over this?

I'll assume it's fine.

Yeah had meant to say, looked it over, looked good.


Save All and Approve All Feature

Greetings,
Wondering, is it possible to introduce features such as:

Approve All
Save All

This will save time instead of clicking each every file if needed.

For suggestions, you should close this and post it here: https://github.com/saoudrizwan/claude-dev/discussions/categories/ideas

Hey @akamalov! You can already do this with Settings > Automatically approve all read-only operations. If you have suggestions for improving this, pls feel free to open an idea in the link @Sarke posted. Thank you!


[Bug]: Validation Fails when Registering a new user with whitespace

Contact Details
<EMAIL_ADDRESS>What happened?
Description
The validation mechanism while registering user needs to fix registering a blank name.
Steps to Reproduce

Go the Sign Up Page.
Enter all the credentials and the name as whitespace as shown in the attached media.
You'll be registered as a blank name as seen in the attached media.

What browsers are you seeing the problem on?
Microsoft Edge
Relevant log output
No response
Are you interested in contributing?

[X] I'd like to work on this issue

Code of Conduct

[X] I have used the search function to check if an issue already exists
[X] I agree to follow this project's Code of Conduct

Which program are you contributing in?
gssoc

@pranshugupta54 I was going through more checks, consider having a quick look below.
Description
Found out that this highlights a common security flaw where front-end validation is trusted to enforce input constraints. It is crucial to ensure that any data submitted to the server is properly validated, regardless of any modifications made in the client-side code.
Client Side Validation:

The Vulnerability
The following attributes are accessible to the client-side and as a result, the client side can bypass all the fields enforced with a client-side validation, if they remove these.

Impact

Data Integrity: Incomplete or invalid data may be stored in the database.
Security: Potential for data injection or other malicious inputs.
User Experience: Inconsistent data might lead to unexpected behavior or errors in the application.

Potential Solution
According to me, the regex patterns and further checks can be done inside the handleSubmit function inside the Signup.jsx which would resolve this issue. If you have further suggestions, I'd consider following them.

@kshavp, why didn't pattern and require work itself? Maybe bcuz we're not using  wrapped?
It's gonna be better to add to handleSubmit.

can you assign it to me i want to work upon it
this code validation perform by yup library,zod library


Research item: User-defined error codes in watchdog

Expected Behaviour

Return 200/404/400 etc from your function code.
Current Behaviour

200 / 400 / 500 are supported but used internally to the watchdog only
Calling os.exit with a non-zero code may also cause a 500 to be returned.
Possible Solutions

Allow user to set environment such as Http_Status_Code and let the watchdog read this before returning. (Appears this doesn't work)
Read the "exit code" instead (note - this only goes between 0-255)
Marshal a custom format for responses (adds work / non-standard)

Workaround
Return 200 with a well-formed body - let that indicate whether it was successful.

I wrote a prototype for pulling back environment variables set within a Node.js script.. it didn’t work. All I saw were the environmental variables I inputted (despite seeing them set successfully)

process.env.Http_Status_Code = 404;
console.log(process.env);

	if ri.headerWritten == false {
		execTime := time.Since(startTime).Seconds()
		w.Header().Set("X-Duration-Seconds", fmt.Sprintf("%f", execTime))
		ri.headerWritten = true

		statusCode := getStatusCode(targetCmd.Env)

		w.WriteHeader(statusCode)
		w.Write(out)
	}

	if config.debugHeaders {
		header := w.Header()
		debugHeaders(&header, "out")
	}
}

func getStatusCode(env []string) int {
	code := http.StatusOK
	fmt.Println(env)
	for _, e := range env {
		key := e[0:strings.Index(e, "=")]
		value := e[strings.Index(e, "=")+1:]
		if key == "Http_Status_Code" {
			val, err := strconv.Atoi(value)
			if err != nil {
				log.Println(err)
			}
			code = val
		}

	}

	return code
}

@alexellis -
I've spent a lot of time researching and trying to solve this specific problem. The best solution I could think of was opening up FD 3 on the pipe and sending JSON messages back and forth.
We've got this technique working in production for 20 or so programming languages. For popular languages like Node or Python, we are able to completely wrap existing HTTP / WSGI interfaces so that user functions can run like Node.js middlewares or python wsgi applications.
Let me know if you have any questions. I'm interested to see how you end up solving this problem.

To be clear, FD 0, 1, and 2 are mapped to: STDIN, STDOUT, STDERR.
I've been using FD 3 as an additional communication channel for sending JSON between the parent and child process. Not sure if it's best practice, but it has been working and allowing for expressive APIs inside functions.
I don't see any specific reason why you couldn't just write the status header out directly to STDOUT and parse that output, but in our case we ended up not wanting to send anything but the response body itself over STDOUT.

Thanks for your input @Marak 👍 - an arbitrary protocol like reading JSON or HTTP over one of the streams could do the job for a managed language along with a set of client libraries. I am trying to see if this can be solved generically so that binaries which know nothing of custom protocols can still operate for instance: ffmpeg or imagemagick.

Yes. We still have full support for arbitrary binaries using this method.

We also don't require a set of client libraries for users. Everything is handled by custom handler binaries we ship with our project per language. It's all seamless to the user ( no client libraries required in functions ), but does require a bit of work on our end to build these handlers.
Let me know if you want to discuss this or other issues further, I've been running an open-source faas platform since 2014 ( before AWS Lambda existed ). I didn't want to start posting links to our project on your Github Issues.

Great to hear about your success @Marak. Are you forking a new process per request or reusing the same one? If you were re-using the same process, then surely some code needs to be in your language runtime to output the "custom JSON" format on stderr?

Not outputting custom JSON on stderr ( that is FD 2 ), we are using FD 3 which is an unused pipe. Overloading stderr is not a good idea ( we tried it ).
We are currently forking a new process per request. The Bash helloworld service takes about 20ms to complete it's entire request / spawn / response lifecycle. I've considered preforking and doing a FastCGI type approach, but our scaling strategy hasn't required this ( yet ). Preforking shouldn't make much of a difference to the code structure either way.
We do have code in our language run-times which maintains the FD 3 comm channel and wrap's it in the applicable interface per language. We do the same for incoming HTTP parameters to create nested data-structures in the specific language ( so user's don't have to think about parsing and deserializing ARGV for CGI environment variables ). This is done through run-time code-injection and meta-programming. For compiled languages like gcc, we perform a one-time compilation step which is cached based on the checksum of the file contents.

We should setup a hangout to compare notes. I think I have a strategy which could help make this even faster.

That sounds good to me. I'd be interested to see what the absolute minimal baseline is for processing a request and spawned process. The fastest I've gotten without pre-forking is about ~20ms.
Im on Google Hangouts as<EMAIL_ADDRESS>

@johnmccabe - what do other frameworks do? consult CNCF white-paper.
@JockDaRock - API Gateway still gives 200 OK

What would also be a nice feature would be the ability to add custom headers to the response for example Cache-Control or Content-Type. I had a couple of ideas how this could be done, one of which is to follow the CGI/FastCGI approach of writing the entire HTTP response out. This does however have the disadvantage of complicating writing a simple response out but @alexellis i know you're working on some "fast fork" stuff so that maybe compliment this.

Yes - fast fork allows full headers to be passed in either direction including error codes. It comes at a cost to the maintainers of the project but not to the consumer. The consumer would likely write the same handler they do today with the regular CGI.
This approach cannot be used when running binaries unless shell-script trickery is created too.

This is an example of how I did it for my Dockercon demos - https://github.com/alexellis/faas-dockercon/blob/master/GetAvatar/handler.py

I still unable to use custom status code, say 400/401/404,  in my handler (even with custom Dockerfile like the above 'GetAvatar' sample). All the response fields including the statusCode come into the body, hence the status is always 200.
So may you confirm that this is still a known issue that hasn't been fixed yet ?

This thread is already several months old. @thucnc I was referring to serialising Content-Type in that example. See: https://github.com/alexellis/faas-dockercon/blob/master/GetAvatar/handler.py#L27
There is no "issue" to be fixed, the behaviour is by design and a constraint you will need to work within, however there is some more context you will find useful:
We have an alternative option which allows HTTP status codes to be returned from the function - but for the time being I'd encourage you to do the following:

if you let the code exit normally you'll get a status of 200 - then inspect the body for the status. For instance you can produce a JSON payload like this:

{
 "result" : "there are 10 items waiting in your cart",
 "status": 200
}

{
 "result" : "we could not find your cart",
 "status": 404
}

If you have an error then call system.exit with a non-zero code, this gives a 500 error

When we have an enhancement ready to return custom HTTP status codes we'll let you know.
Important: Bare in mind that the option above (JSON bodies) is not a HTTP status code as you know it but still provides the context you need to determine success or failure. This is the case with many FaaS private/cloud frameworks - you're calling a function which happens to use HTTP for transport - it is not and should not be confused for a HTTP framework or REST API.

Anyone landing here now should use our of-watchdog, which supports a full HTTP request and response.


Rigbits: Facial Rigger 2.0

Refactor and new functionalities for Rigbits Facial rigger

Hello @liudger @miabrahams @ivogrig
I still have your PR for facial rigger from 2 years ago. I am working on version 2.0 of the facial rigger and I will try to implement your PR and Ideas.
Not sure I will get it all, but I will try my best.
To be honest I am not sure why I didn't merge it when you send it. I hope is not too late to thank you. 😅
Just wanted to do a heads-up here 😄  Have a great day!

I'll have a look next week. Currently not yet using mgear yet @ work. So I have only spare time to look into development

Hi @liudger!
you don't need to do anything 😅  Just wanted to let you know 😄


XOutput crashes when the gamepad's vibration driver is installed.

I have been seeing XOutput crash if my gamepad's vibration driver (which was in a mini-disc from the box) is installed and XOutput works fine again once I uninstall the driver. This happened when I tried it with my Black Cat gamepad, when I tried it with my Havit HV-G69 gamepad and it's always the same problem. I can't use my device's vibration feature because of this issue.

Same problem, as soon as i install the drivers, i can't use XOutput


feat: :sparkles: added cooking section and added link

Description
Please describe the purpose of this pull request and provide context for the changes made.
Checklist
Before submitting this pull request, please ensure that you have done the following:

[x] Read and understood the Contributing Guidelines.
[x] Checked that your changes align with the repository's goals and content.
[x] The submission is not already present in the list

Related Issues
If this pull request resolves or is related to any issues, please mention them here using the following format: "Fixes #123" or "Relates to #456."
Additional Notes (if applicable)
Add any additional information or context that may be relevant to this pull request.

By submitting this pull request, you confirm that you have read and agree to abide by the Code of Conduct and the Contributing Guidelines of the AI Tools Collective project.

Thank you for the contribution. Hope you keep contributing !!


I can't use setOnRefreshListener

我想使用下拉刷新，加载更多，但是setOnRefreshListener这个方法就报错

Could you show more details of your code? I think the method in demo works fine.

@gushoubang please provide the code you are trying to work with. Something like the following works fine for me:
mUltimateRecyclerView.setDefaultOnRefreshListener(new SwipeRefreshListener.OnRefreshListener() {
@Override
public void onRefresh() {
// do your refresh;
}
});

ok,let me have a try

It is OK.
Set swipe to refresh: like this
mUltimateRecyclerView.setDefaultOnRefreshListener
mUltimateRecyclerView.setDefaultOnRefreshListener(new SwipeRefreshListener.OnRefreshListener() {
@Override
public void onRefresh() {
// do your refresh;
}
});

#276 this should be done for the load more issue.


Cannot run jenkins client

Hello,
I this piece of code in my JUnit test
@Test
public void test() throws URISyntaxException, IOException {
	JenkinsServer jenkins = new JenkinsServer(new URI("http://localhost:8080/"), "developer", "123456");
	Map<String, Job> jobs = jenkins.getJobs();
	Assert.assertNotNull(jobs);
}

but it fails with this:

I have all dependecies according to maven:

Do you know what could be the problem ?

Which version of Jenkins do you use? Which version of the java-client-api do you use? Can you show the pom file/gradle file etc. you are using ?

@khmarbaise Im using latest jenkins running in docker https://hub.docker.com/_/jenkins/ . But this issue is something in code, because its even before any request is sent. I am using latest pom file which is in mvn repository https://mvnrepository.com/artifact/com.offbytwo.jenkins/jenkins-client/0.3.7

I am getting the same error:
Caused by: java.lang.NoSuchFieldError: INSTANCE         at org.apache.http.impl.io.DefaultHttpRequestWriterFactory.<init>(DefaultHttpRequestWriterFactory.java:52)         at org.apache.http.impl.io.DefaultHttpRequestWriterFactory.<init>(DefaultHttpRequestWriterFactory.java:56)         at org.apache.http.impl.io.DefaultHttpRequestWriterFactory.<clinit>(DefaultHttpRequestWriterFactory.java:46)         at org.apache.http.impl.conn.ManagedHttpClientConnectionFactory.<init>(ManagedHttpClientConnectionFactory.java:72)         at org.apache.http.impl.conn.ManagedHttpClientConnectionFactory.<init>(ManagedHttpClientConnectionFactory.java:84)         at org.apache.http.impl.conn.ManagedHttpClientConnectionFactory.<clinit>(ManagedHttpClientConnectionFactory.java:59)         at org.apache.http.impl.conn.PoolingHttpClientConnectionManager$InternalConnectionFactory.<init>(PoolingHttpClientConnectionManager.java:494)         at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.<init>(PoolingHttpClientConnectionManager.java:149)         at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.<init>(PoolingHttpClientConnectionManager.java:138)         at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.<init>(PoolingHttpClientConnectionManager.java:114)         at org.apache.http.impl.client.HttpClientBuilder.build(HttpClientBuilder.java:726)         at com.offbytwo.jenkins.client.JenkinsHttpClient.<init>(JenkinsHttpClient.java:96)         at com.offbytwo.jenkins.client.JenkinsHttpClient.<init>(JenkinsHttpClient.java:106)         at com.offbytwo.jenkins.JenkinsServer.<init>(JenkinsServer.java:58)

First mvnrepository is NOT Maven Central. Maven Central is here: https://repo1.maven.org/maven2/. or the search engine for Maven Central is here: https://search.maven.org
Furthermore I have checked with Jenkins 2.32.2 and do not get this exception so in other word it can't be the code...nevertheless can someone please make a whole example project including a pom file which is used which shows the wrong behaviour...so I have a chance to check what's really root cause of this...
Furthermore have some plugins installed in the used docker instance you are using?

in my case it was an issue with gradle and the classpath.

can you post the gradle build file and which Gradle version you are using so I can try to find the issue...

i dont think the problem is related to this library. Just moving the depedency to the root build.gradle fixes the issue, i can give you more details if needed but to be honest... your library is good :). The problem is in gradle and how they generate the classpath.

Ok Thanks so far.


Support fediverse:creator tags for posts

Reference: Robb Knight - Setting Up Mastodon Author Tags
Add the following tag to the head of the page based on authors Mastodon profile.
<meta name="fediverse:creator" content="<EMAIL_ADDRESS>/>

Adressed in commit: 4806eb1f2ef5f0c89b61191bc8270b0c23dbf38d


Shouldn't default to globally named

While the ExTTY GenServer can be used as a normal unnamed process, it's impossible to start the  GenServer without naming it due to how the default start_link function is implemented.

I just tried name: nil thinking it would fully break, but it seems to have worked. Does this accomplish what you were hoping?
iex(1)> ExTTY.start_link(name: nil)
{:ok, #PID<0.226.0>}

Digging a bit more into GenServer.start_link it seems name: nil is viable and should be expected to create unnamed process.


Allow for retry attempts in the watch loop

This change is

node/log_entry_sync/src/sync_manager/mod.rs line 371 at r1 (raw file):
Previously, peilun-conflux wrote…
After resetting progress, handle_data will also exit here. Will handle_data be started again to continue processing data?

If  sending a reset progress msg via progress_tx is successful, handle_data will continue processing data without existing. However, If sending fails, handle_data will exit, causing the program to exit as well. In this case, we need to get involved.


refresh loads no data on all pages

Hi
Navigating to http://localhost:8000/#/members/5b3a8a63-3a12-d0b1-2668-9407e94374b2/info?_k=tbi8os and refreshing the page yields no data / node info
If i navigate to the page again from the menu, it works fine
This seem to be for all non-index / list pages
The server log outputs
11:01:04.241 connection.go:49 ▶ ERRO  Could not write close message to websocket: websocket: close sent
I'm running iverberk/nomad-ui:latest on nomad 0.4.1

Yep, almost every page is broken in this way.  This effectively makes page believe that has requested information while actually nothing happened.
The reason it works for list pages is because there is internal caching for them on backend side.

okay, any workaround / fix for this ? :)

@themalkolm did you continue working on your fork somewhere? I'm currently switching from supervisor to nomad, and would be nice with a nomad-ui that is somewhat functional for basics, and you seemed to have a good pace when you participated in the repo

The workaround is to always navigate from the index page.

@jippi yes, I keep working on it. I can't share it but I can share our experience and issues you are guaranteed to face e.g. try to schedule 1000 jobs and try to make sense of what is going on in the cluster using this ui :) It will also likely to simply die due exceeding number of objects.

@jippi I will fix this problem for you, are there any other concerns that you have that need attention? This really helps me in prioritizing issues.
@themalkolm if you have the luxury of working on this at your day job why don't you make a public repo so that we can all contribute back to that and then you can maintain it and deal with the issues/PR's, instead of telling people what is wrong with this project? It took a lot effort on my part, in my free-time, to get this off the ground and while you've made useful contributions the core was already there. If you are not putting proprietary stuff in the UI then why can't it be open-sourced?
If people are going to use this at massive scale then yeah, there will be probably be issues with the UI. Since I have not heard about these issues it is not a priority for me. If your are going to schedule thousands or millions of jobs then this UI, or maybe any UI for that matter, is not going to work out real well but with a little help from the community this can be fixed, or you can use (and pay for) HashiCorp's offering once it is released :-)

@iverberk I thought it is obvious. I can't share my code as it belongs to the company.

So, instead of being frustrated @jippi now at least know that there is somebody who probably has answers / ideas to common problems due actually using this project in production. I see this as a good thing.

Ok, reading back on your reactions I might have overreacted as you are simply stating the case. There's nothing wrong with it and I agree that it is a good thing that you are telling about your experiences in production use, as I'm not using it in production myself. Maybe you can share those experiences in the form of issues that you've encountered (not necessarily PR's) so that other people who are evaluating the project can make a proper judgement for their use-case. I guess I'm just a little bummed that I can't spend enough time on it and you can :-)

@iverberk no hard feelings.
We do consider sharing back our experience but we are still in the pre-alpha stage for our project.. We are rushing though and constantly changing things all around.
While I can help explain current bugs or limitations, I don't have 100% certainty in our approach as we are yet to release it to our internal customer and see it in action for long run.

@iverberk do you plan to run this project yourself in production level environment anytime soon ?
Having a project owner that doesn't use the project in production himself could be poential danger zone (abdondon project / not every-day user / lack of spare-time to work on it / not equally suffering from pain points in the usage)
I haven't observed any of these issues yet for nomad-ui though! if nothing else it would be lovely to know if you plan to roll it somewhere critical yourself too :)

Just for the sake of it. We're also currently ramping up our Nomad deployment and expect to run all of our services dockerized and scheduled by Nomad within 6 months. One of the biggest downsides so far is that Hashicorps Atlas will not be deployed in our company due to both technical constraints (AWS only support so far) and the maturity of the product in general. For now we're happy customers of this project because it does give you the opportunity to get some simple feedback on Nomads status (logs like mentioned in another issue are a problem though, not too bad for us as we're logging to Kafka -> Elastic)
My Node/JavaScript knowledge is very limited (non-existent) as I'm an OPS guy and it never interested me enough to start learning. I will try to get some traction internally from our frontenders to get a bit of commitment on this project. Hopefully that'll happen automagically when ppl have to work with the ui on a frequent basis.

@jippi I'm probably not going to run it in a production environment any time soon. At my current client they are not using Nomad unfortunately and personally I don't have a use-case running it in production. I understand your concern and I would also rather see that I can evolve the project based on actual working hours and production usage but alas...
This is the blessing and curse of doing open-source work. I think most people (probably not companies) start open-source projects for fun, learning and problem solving. Once it becomes successful and people start depending on it for the day-to-day work, the expectations change. Depending on the maintainer's resources (s)he might or might not be able to live up to the expectations. What to do?
There are no guarantees to be had (it's free after all) but since it's open-source you can always fork and maintain/evolve it yourself. You'll have to make a judgement call if you want to go this route if things go bad. I think in the ideal case, multiple people/companies contribute to the project and it won't depend on a single person anymore. I'd be more than happy to go that route if I think the project has a stable core and that there are enough contributors/committers that can discuss and evolve the project in a future-proof way. Right now it's just me and a lot of useful contributions by @themalkolm. Unfortunately he is not able to share his further improvements but we can benefit from his experiences and he seems committed to the project.
Let me finish off by saying that I have no intention of abandoning this project but I am limited in the time that I can spend on it. Things will sometimes move slowly sometimes because of it. Nomad definitely seems to be picking up pace and the lack of a proper UI by HashiCorp will only strengthen interest in the project I think. Hopefully, with the help of the community, we can quickly come to a situation where people that use it in production become active contributors and/or committers. Maybe this is more of an observation than an answer but I hope it helps any way!

Fixed by @jippi in #100


Fix bug where gnome sets Highlight color even when nonexistant

I found that Gnome sets $HIGHLIGHT_BG_COLOR to "#" when run through the gnome color fcn.  I added a check for empty colors to gnome_color.  I also found that the cursor was getting set to a non-specified color on gnome so I added setting the cursor to the specified color in set_theme.
Resolves #268

It seems to be failing a check, but I'm not sure the issue.  If there is something that needs to be done to pass the check, let me know.

It seems to be failing a check, but I'm not sure the issue.  If there is something that needs to be done to pass the check, let me know.


Dummy issue using personal access token

Testing to create issue using personal access token.

@krritik can this be closed now?

yes, was testing this part of SQL Migration Extension


Reference in annotations

Friend, your plugin has a lot of potential. A lot... But I'm not fluent in your language, and have doubts about several things there. For example, can I reference or open a window of your plugin within an annotation? I study laws and wanted to put the law in the quote block and just below it put your mind map plugin.

Now the api not support this function


Starting TorXakis from a directory with no write permissions causes a "connection refused error"

For example, trying to start TorXakis on my /usr folder gives rise to:
torxakis.sh: line 18: .txs.9876.log: Permission denied
txsui: Network.Socket.connect: <socket: 22>: does not exist (Connection refused)

Possible solution:

Get rid of the .bat and .sh scripts, and add make it possible for txsui to start a server if it is gonna run on the same machine. This will greatly simplify TorXakis usage for newcomers. We can modify the UI to search for the next available port if no port is given (and therefore assume that the user wants the UI to start the server locally).
Modify TorXakis server so that the logs are written to a standard location (like $HOME/.torxakis/logs/).

@pjljvandelaar I'm assigning this to you so that you can review the report. After that feel free to change the assignee.

On branch feat/start-txsserver-from-ui the TorXakis server can be started from the UI, so by deprecating the batch files we can get rid of this problem. What do you think @pjljvandelaar

I like the change.
Continue by removing the batch files:
maybe let torxakis.bat/sh point to txsui(.exe)

Should we put all info in $HOME/.torxakis/ directory?
Thus

.torxakis.yaml
.log files
smt-log files
etc.

maybe let torxakis.bat/sh point to txsui(.exe)

What do you mean exactly? Making symbolic links? Or just start txsui without arguments? Is there any issue with just removing the batch files?

Should we put all info in $HOME/.torxakis/ directory?

I think it is a good idea, indeed.


Bug

Command toggledm is not disabling some dm, in previous version i toggle off dm and it not sending a " VC OWNER leave..."
Now it not works

Issue

Working in it

is it working now?
if no ask Tomato cause he is creator.

It not works now because i created an issue on this repository

hi it is removed because of misuse

How?

vc owner leave will only dm u, if u are the new owner,
toggledm does not affect that
toggledm is just for the admin commands!


Display Work Item Types Filter Selection in Sidebar Menu [5]

Description
As a user, I want to quickly navigate to filtered work item types lists.
Functional Acceptance Criteria

The user can navigate to a list that only contains work items with a specific type (see #658) using a sidebar menu.
The sidebar menu contains a hardcoded list of links.
Labels and Title of the sidebar menu is subject to UX definition.

Non-functional Acceptance Criteria
None.
Note: The sidebar menu is hardcoded for the context of this story, but will be dynamically created later by retrieveing a category of work item types from the backend.
Related

Userstory #658.

@michaelkleinhenz we need:

UX for list links on the side panel
list of links to be hard coded

Would there be hierarchy within these list of links?


Add kitty themes to the kitty-theme repo

The kitty terminal has a command to change the colors/theme. Any kitty colorscheme located in the kitty-theme repo will automatically be available via kitty +kitten themes. It'd be great if the kitty configs could be added to the repo so zenbones users on kitty can quickly and easily change themes and have it managed the way kitty prefers.
I could do this, but I'd wouldn't want to unless you were okay with it since it's your work and such.
https://github.com/kovidgoyal/kitty-themes

It's no problem. Please go ahead 👍

Thanks @mcchrish, I've created a PR! https://github.com/kovidgoyal/kitty-themes/pull/31

The PR has been merged. I'll go ahead and close this issue.


Updated Folder Structure

fixes #14
What does this PR do?
This pull request has been created to update the folder structure of this project.
screenshots:

The folders look great, thankyou. Did you check if the program still works? For example the link stylesheet from index.html needs to be changed.

unfortunately this code still does not work. I think now the problem is with app.py not server index.html.
Maybe it's a better to test the code. You can do that with python3 app.py

It's working.


RecursionError when running tests

Environment information

OS: GNU/Linux
Python Version: 3.10.11
ape and plugin versions:

$ ape --version
0.8.10
$ ape plugins list
Installed Plugins
  ens          0.8.0
  etherscan    0.8.2
  foundry      0.8.2
  vyper        0.8.4

Contents of your ape-config.yaml (NOTE: do not post anything private like RPC urls or secrets!):

$ cat ape-config.yaml
plugins:
  - name: vyper
  - name: foundry
  - name: etherscan
foundry:
  host: auto

What went wrong?
Please include information like:

what command you ran
ape test --network :mainnet-fork --nf --sw

the code that caused the failure (see this link for help with formatting code)
It's at https://github.com/lidont/lidont

full output of the error you received

/home/ramana/vyper/lidont/tests/test_lidont.py:110: in test_cannot_deposit_not_approved
    with reverts("revert: ALLOWANCE_EXCEEDED"):
E   AssertionError: Transaction did not revert.
E   However, an exception of type <class 'RecursionError'> occurred: nonreentrant ContractCache.get:0x2b33CF282f867A7FF693A66e11B0FcC5552e4425.
        ETH_pipe_added = {'pipe': <ETH-pipe 0x33f4f8bf90d8AA3d19fF812B50e79c15Df0d0b03>, 'toggle_valid_receipt': <SharedBlobReceipt 0x24cca334594e0b3f2eb757db665eb6880d0085fc62ce8878fe96e704706d7b39>}
        accounts   = [0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0x70997970C51812dc3A010C7d01b50e0d17dc79C8, 0x3C44CdDdB6a900fa2b585dd299e...a2C08b23698B3D3cc7Ca32193d9955, 0x23618e81E3f5cdF7f54C3d65f7FBc0aBf5B21E8f, 0xa0Ee7A142d267C1f36714E4a8F75612F20a79720]
        have_stETH = <SharedBlobReceipt 0xbf36a2e96ca87267a542f219e5d118bb56543f76238e7b942a9be2e05d8eda3c>
        withdrawler = <withdrawler 0xE5b6F5e695BA6E4aeD92B68c4CC8Df1160D69A81>

How can it be fixed?
Fill this in if you have ideas on how the bug could be fixed.

Interesting. The recursion error comes from our non-reentrant function (Added in this PR: https://github.com/ApeWorX/ape/pull/1503)
Which I thought existed for unrelated reasons to testing.
I'll investigate more.

I see some weird things probably related this in the test code, like the usage of internal methods rather than public ape apis.
for example:
project._get_attr('ETH-pipe')

should probably be
project.get_contract('ETH-pipe')

etc.

OK so we fixed the bug, thank you so much for raising this issue. It is not only a bug-fix but a performance upgrade as well (going to try and do some measuring on that).


Fixed interaction delete endpoint

@bethesque this pull request along with this one are the PR's that resulted from you requesting that I break them up by bug. I am just looking to find out when these may be considered?

I'm sorry @MattTYXM, it's been so long that I've lost the context of this one. Can you explain it to me again? Where did this keep verified thing come from?

I apologise for the slowness of my responses. I have just moved house with 13 month old twins and I often don't get a chance to check my emails for days at the moment!

Not a problem, @bethesque. I just wanted to send out a reminder. The root of this one is that when the service is running and we need to test multiple consumers, the endpoint to clear the interactions after they have been verified and the contract has been written was only removing the unverified interactions. This was causing subsequent contracts to be written with the verified interactions from the first consumer.

Hi MattTYXM,
The way you are using the mock service is not the way it was intended. Each mock service instance is meant to represent one provider. I'm not keen on accepting this because I'm unsure of the consequences. It runs the risk of data leaking between tests. Can you restart your mock service instead?

Ok @bethesque I'll look into refactoring the test runner to run the consumers 1 at a time.

👍


view_type Error

I'm new to VoiceIt.
I have add
allprojects {
repositories {
google()
jcenter()
maven { url 'https://jitpack.io' }
}
}
and
implementation 'com.github.voiceittech:VoiceItApi2AndroidSDK:2.1.3'
implementation 'com.github.voiceittech:VoiceIt2-Java:1.5.0'
these two my grade files and. the gradle sync was successes.
btw when I build the project after adding these I got error. I don't know how to solve it. Please help me

This is because you updated gradle. Do not update gradle and it will compile.


Add maxLifeTime support

This commit adds maxLifeTime to the connection pool.
Current connection lifetime is delivered from PooledRefMetadata.
To use idleTime() and lifeTime() on PooledRefMetadata, PoolMetricsRecorder implementation is required. Thus, also created SimplePoolMetricsRecorder which uses Clock to acquire current time.
Also, Javadoc states maxIdleTime=0 is no timeout. However, setting 0 would evict the connection every time. Fixed the behavior not to evict connection and added unit tests around it.
To workaround the issue https://github.com/reactor/reactor-pool/issues/33, created an evictionPredicate that performs both maxIdleTime and maxLifeTime check.

Thanks a lot. That's merged and polished now.


Fix breakages from offer/review abstraction

Checklist:

[ ] Code contains relevant tests for the problem you are solving
[X] Ensure all new and existing tests pass
[ ] Update any relevant READMEs and docs

Description:
Fix some breakages, document things.
Please HOLD OFF on merging - I'll do it myself once I have verified DApp works with PR https://github.com/OriginProtocol/origin-dapp/pull/481

Tested these changes with the DApp. Things seem to be working.
This PR is now ready for review and to get merged into master.

Thanks @tyleryasaka and sorry for the breakages. My bad !
Looking at your PR #436 now...


README update & Solidity NatSpec comments

Goal of this PR
The main goal of this PR was for me to dive in cryptographic block used in our Nova Verifier ported in Solidity.
To do so, I've refactored the README and tried to produce NAtSpec documentation for our Solidity files.
Changelog

Fixed typo for EqPolynomial.sol: EqPolinomialLib -> EqPolynomialLib
Added NatSpec comments in all *.sol files in src
Updated repository README.md to present repository structure, along with description and state of feature branches
Added README in src/blocks, src/blocks/grumpkin, src/blocks/pasta and src/blocks/poseidon to describe their content.

Related issue
N/A

Your target branch is cleanup-main, which means it also picks some commits from there. I expect some more commits added from @samuelburnham (ci: Fail e2e tests when PR base is main #45), so eventually we will need to specifying the proper order of PRs to be merged

Yes! I guess the way to go would be merge @samuelburnham PR in #42 , i'll merge the commit in mine, there should be no conflict. And if we plan to merge #42 in main I can change the target branch of this PR.


npm install fails for @supabase/auth-helpers-sveltekit

Bug report
Describe the bug
unable to resolve dependency tree
To Reproduce
Steps to reproduce the behavior, please provide code snippets or a repository:

come to any of the official sources such as npmjs.com, see that package was last updated few days ago and is at version 0.7.1 latest
run "npm i @supabase/auth-helpers-sveltekit"
watch screen fill with red

Expected behavior
stuff working as it should!
Screenshots
└ $ npm i @supabase/auth-helpers-sveltekit
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving<EMAIL_ADDRESS>npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/@supabase/supabase-js
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR! node_modules/@supabase/auth-helpers-sveltekit
npm ERR!   @supabase/auth-helpers-sveltekit@"*" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR! See C:\Users\xxx\AppData\Local\npm-cache\eresolve-report.txt for a full report.

npm ERR!      C:\Users\xxx\AppData\Local\npm-cache\_logs\2022-10-02T00_53_00_263Z-debug-0.log

System information
	"devDependencies": {
		"@sveltejs/adapter-auto": "next",
		"@sveltejs/kit": "next",
		"svelte": "^3.46.0",
		"vite": "^3.1.0"
	},
	"type": "module",
	"dependencies": {
		"@fontsource/fira-mono": "^4.5.0",
		"@supabase/supabase-js": "^2.0.0-rc.10"
	}

Additional context
this is so frustrating,  auth-helper not playing nice with older version of supabase-js so need to update supabase-js but then current auth-helper doesn't like latest version of supabase-js, which in turn doesn't like earlier version of auth-helper.  I feel like developers don't even bother testing, checking, updating documentation and just do it for the sake of github heatmap being filled up

From the looks of your system information, you are trying to install auth-helpers-sveltekit with the latest version of the supabase-js library. We haven't released a version that works with that version as yet, the version released was to resolve issues with the breaking changes in SvelteKit RC. If you look at the peer dependency of the package.json you will notice its stated to work with ^1.35.3, so only versions in the v1 of the supabase-js library.

same here I'm trying to run any of the examples all of them don't work

same here I'm trying to run any of the examples all of them don't work

A bit more input on what exactly is not working or a reproduction would very handy

Are there any plans to update this for v2 RC compatibility soon?

@tomsharratt I've been playing around a bit, you can take a look at my fork. It will probably change before the release but if you want to use it feel free. Also make sure to check if it's actually working correct, I didn't do a lot of testing.
To be concise the v2 rc update will take a bit more time to solidify the api and avoid breaking changes.

same here I'm trying to run any of the examples all of them don't work

A bit more input on what exactly is not working or a reproduction would very handy

https://user-images.githubusercontent.com/63852512/193576367-64564a67-ed47-427d-a08e-cb6f65eaff54.mp4

@tomsharratt I've been playing around a bit, you can take a look at my fork. It will probably change before the release but if you want to use it feel free. Also make sure to check if it's actually working correct, I didn't do a lot of testing.
To be concise the v2 rc update will take a bit more time to solidify the api and avoid breaking changes.
Edit:
the package is not published, you'd have to build it yourself.

Can you tell me how do you use the build files in a sveltekit project?

@Nisthar copy the contents of this folder inside src/lib/supabase-auth. Adjust your src/app.d.ts and remove the app.d.ts file from the copied folder. That should be it. You can now import everything you need from $lib/supabase-auth.

@Nisthar copy the contents of this folder inside src/lib/supabase-auth. Adjust your src/app.d.ts and remove the app.d.ts file from the copied folder. That should be it. You can now import everything you need from $lib/supabase-auth.

I get this error

do i need to copy auth-helpers-shared folder as well?

@Nisthar copy the contents of this folder inside src/lib/supabase-auth. Adjust your src/app.d.ts and remove the app.d.ts file from the copied folder. That should be it. You can now import everything you need from $lib/supabase-auth.

I copied the auth-helpers-shared as well.
But its not working for me. I get errors like

Ok somehow git clone https://github.com/david-plugge/supabase-auth-helpers.git is cloning the old version

@Nisthar copy the contents of this folder inside src/lib/supabase-auth. Adjust your src/app.d.ts and remove the app.d.ts file from the copied folder. That should be it. You can now import everything you need from $lib/supabase-auth.

I am getting this error:

@Nisthar copy the contents of this folder inside src/lib/supabase-auth. Adjust your src/app.d.ts and remove the app.d.ts file from the copied folder. That should be it. You can now import everything you need from $lib/supabase-auth.

For me what worked was uninstalling the 2.0.3 version of supabase-js and installing 2.0.0

The auth helpers are released for v2 now so there shouldn´t be an issue anymore.
l´ll close this issue now, feel free to open it again if you encounter any issues (or create a new issue)

Having this same issue in 2023(bout to be 2024 in a few days). Just following the "Build a User Management App with SvelteKit" tutorial and getting a similar issue:
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving<EMAIL_ADDRESS>npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/@sveltejs/kit
npm ERR!   dev<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR! node_modules/@supabase/auth-helpers-sveltekit
npm ERR!   @supabase/auth-helpers-sveltekit@"*" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.

I came to Supabase from Appwrite because I was having similar problems with Appwrite documentation producing code that was unusable. Just a bit frustrated. Would love any help to resolve this.


Test is core dumping on aarch64 with luajit

luajit tests/run.lua is dumping core on aarch64 on Fedora.
ok 107 udp - udp recvmmsg
PANIC: unprotected error in call to Lua API (bad light userdata pointer)
/var/tmp/rpm-tmp.2YhtYX: line 42: 3352997 Aborted                 (core dumped) luajit tests/run.lua

https://kojipkgs.fedoraproject.org//work/tasks/2680/76172680/build.log

This did not happen with 1.41 but with 1.42 now.


Feature #18 - Define and execute refactoring plan for BibEntry::getSourceField

closes #18

Resolved! @pat672

All should be good now