Use webp for avatar storage

This PR uses the github.com/chai2010/webp package to encode and store avatars as webp.
Ref #24263

Fails on Windows as suspected. I'm really not sure if this dependency is the way to go. We should to the remaining avatar changes as discussed and maybe wait for a better webp encoder to appear in the ecosystem.

I don't think we should introduce another CGO library.

Agree, our goal should be to build with CGO_ENABLED=0 which will give the best  go toolchain and produces binaries that can run standalone inside docker from: scratch.

I don't think we should introduce another CGO library.

Then we cannot store avatars as webp. We have four options:

Continue to store as png and abandon any hope of storing as webp.
Use a CGO that uses libwebp -  this library appears to be only one that correctly inserts the cgo dependency.
Use the ccgo library - https://git.sr.ht/~jackmordaunt/go-libwebp
One of us needs to learn the webp spec, write pure go code to encode as webp and either upstream it or maintain it as a library

... maybe wait for a better webp encoder to appear in the ecosystem.

None will appear as far as I can see. The referenced issue for the improvement to x/image/png is extremely old.

Fails on Windows as suspected.

That test is poorly named - it's actually testing if we can build with CGO_ENABLED=0 ...

Agree, our goal should be to build with CGO_ENABLED=0, see https://github.com/go-gitea/gitea/issues/24658 for the topic.

I've added a build-tag switch code which will switch to png when CGO_ENABLED=0 ...
Whilst having everything in pure go is kinda nice I am suspicious that we may be needlessly holding things back and may be choosing inferior options simply because of it.

We should do the remaining avatar processing changes as discussed ....

Certainly, but if webp is wanted - this or the ccgo library are the only options. I don't think there's anything else.

Anyway I'll get this to pass CI and leave it as an option.

None will appear as far as I can see. The referenced issue for the improvement to x/image/png is extremely old.

Full browser support only came very recently, so webp adoption will increase significantly now, and I assume it will eventually spawn a usable pure-go library.

I think we can take https://github.com/go-gitea/gitea/pull/24653 as a viable alternative. webp will be preserved in original if below the configured size. If above, it will resize and be stored as PNG. I think it's a good compromise until a pure-go webp encoder arises.

Actually, for further steps, maybe we can parse the webp header manually (just like what I have done in an early commit), then accept webp by default. I guess our "PNG resize/compression" never wins over webp.
Then we can drop the webp package totally, reduce Gitea's codebase side.

Since #24653 merged, maybe we can close this one at the moment?

I think we agree on closing this. Maybe later when there is a better go webp encode, we can do it, and use this as a reference possibly.


Money - implement hash code

Money overrides equals but not hashcode. I was using Money instances as
keys in a dict and got confused as to why it wasn't working.

Looks good


Fix audit suggestions

Closes #39
Closes #40
Closes #41
Little improvements to bump audit scores.

Looks good on re-review. Only thing left is to bump the compiler pragma to latest release and fix the tests.

seems great!


segmentation.m unable to find skel_file

https://github.com/suptimq/AppleQSM/blob/f12e99e0214cff324a37d882bb251b7c820a06f6/code/segmentation.m#L14
need change '_contract_*_skeleton.mat' to '*_contract_*_skeleton.mat'

Thanks for pointing it out!


Trailing comma in `::set-output``

I'm not sure if this is relevant, but I noticed that the log shows the meta-command
::set-output name=cache-hit,::true

being emitted, whereas based on Github actions documentation I would have expected
::set-output name=cache-hit::true

Sorry for the noise if this is in fact harmless.

All "Commands" issued via the toolkit have this issue, from how they append properties: https://github.com/actions/toolkit/blob/master/packages/core/src/command.ts#L60
Both work, but it does look odd.
Going to transfer this issue to https://github.com/actions/toolkit


[BEAM-674] Source part of GridFS IO

This is the "Source" part for GridFS based IO for beam.  (will work on Sink next, but would like to get this reviewed and merged first) . The "default" is to parse each file as text files (by line), but a parser function can be provided to take the InputStream and parse via whatever is required.
For runners that can split into bundles it attempts to assign files in the grid to different bundles.

R: @jbonofre

By the way, your PR contains javadoc errors. Please fix it. Thanks.

By the way, the build fails due a test failure in the Spark runner (RecoverFromCheckpointStreamingTest). I'm checking on master and fixing.

The code LGTM but I would like to have all checks OK. So, let me fix the build on master, then I will let you know to rebase and the PR should be OK.

Now we fixed the build, can you please rebase this PR on master ? Thanks.

Rebased and all checks pass.   Thanks!

Cool. Thanks.
LGTM, I will merge.

Thanks ! Waiting the end of CI.

It sounds good.
LGTM
I will merge.

Thanks @jkff I will update accordingly.

We (Dan or I) will submit a PR for the proposed changes.

I've started working on most of this at:
https://github.com/dkulp/incubator-beam/tree/gridfs-t2
Comments welcome.     Will work on this more tomorrow.

Please, submit a PR for the review.

By the way, getCurrent() should return NoSuchElementException if ObjectId is null.

I don't see use of SourceTestUtils to test split and estimated size. You can take a look on what I did in ElasticsearchIO (https://github.com/jbonofre/incubator-beam/blob/BEAM-425-ELASTICSEARCHIO/sdks/java/io/elasticsearch/src/test/java/org/apache/beam/sdk/io/elasticsearch/ElasticsearchIOTest.java) as example.

SourceTestUtils doesn't invoke splitIntoBundles per se, but it provides assertSourcesEqualReferenceSource. You should call splitIntoBundles yourself with various parameters and verify the result using that function.
It also indeed doesn't test getEstimatedSize - that has to be simply unit-tested manually.


DAODAO Integration

Solving this issue https://github.com/metagov/daostar/issues/112

Worked on here, https://github.com/metagov/daostar/pull/185


How to generate object dictionary with EDS tool

Hi,
I need to create my own object dictionary with EDS editor tool (https://github.com/CANopenNode/CANopenEditor). But when I load DS301_profile.eds to the editor and export OD files they are different. Instead of OD.c/OD.h a CO_OD.c/CO_OD.h are generated and are completelly incompatible. How to use CanOpenLinux with user-generated OD?
Thank you

Thanks for fast reply. I realized that I downloaded an EDSEditor from fork: https://github.com/robincornelius/libedssharp it uses the same GUI design but appears to work in slight different way and do not allow to load xpd files. So with original EDSEditor I can continue.
Thank you


Is it possible to add mastodon to the social media?

It would be nice to have the icon and link to mastodon, together with the verification code snippet.
This is how Minima implemented it:
https://github.com/jekyll/minima/commit/81b14fc6670caa0f6aa1070b5f28914c99921ba8

Yes, I did pretty much the same and created a PR :)
Thanks!!
On Thu, Nov 10, 2022 at 5:10 PM David Merino Recalde <
@.***> wrote:

This is how I made it, for anyone that wants to add Mastodon:
Add this in _includes\social.html:
{% if site.mastodon_username -%}

{% endif %}
And this in _config.yml in the # Social integration section:
mastodon_username: yourusername #without the @
—
Reply to this email directly, view it on GitHub
https://github.com/alshedivat/al-folio/issues/973#issuecomment-1310532404,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABR5WF6G3WYN2T6EM23MSTWHUM6DANCNFSM6AAAAAAR4SOXBM
.
You are receiving this because you authored the thread.Message ID:
@.***>

--
@.*** ▀─█▄██▄▀▄
http://brunocaldasvianna.com ─█▄██▄▀█▀█▄
telegram+twitter: @brunovianna ▀─█▄██▄▀█▀█▄▌██─█▌█▌


update to Cloudwatch Logs new payload format

References #29
I think the payload for Cloudwatch Logs has changed to:
{
   "awslogs": {
      "data": " "
   }
}

These changes work with Cloudwatch logs, at least what I'm seeing in setting up Cloudwatch Logs stream to Lambda functionality.

hmm now I forget what this old stuff was, maybe CW -> Kinesis -> Lambda or something, been a while now

I'll have a fix for the tests here momentarily

Do you have a link handy? Can't find the damn docs for it haha

http://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Subscriptions.html#LambdaFunctionExample
If you look at the sample Lambda function you can seem them referencing input.awslogs.data. So far that's the most concrete documentation I've found on the payload lol.

ooo.. just a bit further down:
The actual payload that Lambda receives is in the following format { "awslogs": {"data": "BASE64ENCODED_GZIP_COMPRESSED_DATA"} }

hahaha explains why I couldn't find it, LGTM!

What's the merge strategy look like for this?

I think we're probably fine to just squash/merge this in, IIRC I was messing with consuming the logs from Kinesis so I don't think anyone would really be using it. Alternatively we could move this to cloudwatchlogs, that might be a more sane pkg name (though verbose). Either way I think what's here now is too ad-hoc anyway so I'm cool with either

@tj Alright. Squashed commit in place. Feel free to merge when ready. I didn't make any additional changes.


Google analytics, first access to website aren't tracked.

if you type the URL in the browser, this pageview aren't notified google analytics, but the next pageviews are notified correctly. only the first access to website has the problem.

Hey, @mostaphazeghaouigmail! Telescope has changed a lot in the past months, and there is a new React-based version, Telescope Nova (intro video). If you know Crater, it runs on the latest version.
The Legacy version is no longer supported. I'm closing this issue.
I invite you to check the new version, it's awesome!
Happy hacking! 🚀
Ps: by the way, don't hesitate to join the Slack to ask any question, you are welcome! 👍


test coverage for catalog generation

This is easy to test in situ on Cheyenne (or in other places) but hard in the CI framework.
Can we break out tests that should not run in the CI space, but should when there is access to the data necessary to build a catalog?

Another solution is creating some toy datasets and using these for testing purposes. I did something similar to this for intake-cmip.  I will work on this

Could also curate a file with a list of paths to be parsed and enable reading that file as a virtual walk of a directory structure. This would enable testing everything down stream of the actual listing of files.

Fixed in #28


Include topics on Arrays and also include more STL elements

The array folder does not contain any resources. we can update it with problems and code snippets.
We can also add more STL elements like -map, sets etc.
Assign this task to me. I shall complete the above.

Hey @ePSA-eJya  i really want to contribute this issue.please assign to me as i am new gssoc23 contributor

Hey @ePSA-eJya i really want to contribute this issue.please assign to me as i am new gssoc23 contributor

I am a contributor myself :)


Add changelog

@justjohn Thank you for your hard work on this!
Is there a changelog that we can look at when updating to make sure to account for any breaking change or apply a better solution implemented in the updated version?
Also, a minor thing: the 0.8.4 version still says 0.8.3 on line 2.

I created a CHANGELOG for the merge branch (see #280) which collects some of the current pull requests. Do you think this is sufficient? https://github.com/plepe/twig.js/blob/merge/CHANGELOG.md

@plepe do you want to fork and continue this project? it appears that justjohn is done supporting the project and it will then die

I think that Twig has a lot of potential, especially with client rendering via Twig.js. It would be sad to see the project die, therefore yes - although I can't say if I can support the project for a long time. I'll need help from the community ...

My plan is make the library full compatible with the php version. Especially the form part from symfony.
I started to make a better lexer in my fork:
https://github.com/connorhu/twig.js/blob/master/src/twig.lexer.js

@connorhu Yeah, I've already noticed your code. Looks pretty nice :-) I thought you'll create a pull request when you are ready. I guess this is something for a major release like 0.9.0, isn't it?

@plepe i am down for participation since i am using this fairly extensively, but if justjohn is not to support he needs to add contributors to the repo so that it may be maintained and improved.

@r3wt I wrote an email this morning (MET timezone), now waiting for reply.

@plepe - I added you as a contributor to the repo - as you've already discussed, I'm not very active on the project anymore, but I do want to see it move forward. I'll have to give some though to the side-effects of moving the repo to an organization.
@connorhu - Supporting functionality outside of twig php core is great - in general you should do it as an extension to twig.js, just like symfony provides extensions to twig php. It'd be nice to have a set of common twig php extensions mirrored for twig.js.

@justjohn Thanks for adding a new maintainer. I'm not able to help this
project much at the moment.

@justjohn The lexer is the first step. My plan is port every feature of twig.

@justjohn Thank's a lot! I'm quite busy with family matters myself :) Looking forward for future activity in this repository.
Btw, the lexer of @connorhu is not an extension, but a replacement of the current parser (as far as I understand).

An advantage that I see when using an organisation as head of twig.js, we can create repositories for extensions, e.g. for #271 .

@plepe @connorhu Got it on the lexer - I've gotten used to people asking for symfony filters/etc... in twig.js and have a mostly automatic response to it :/ My only request for a replacement lexer is that it's at least as fast as the current one.
I went ahead and created the organization github.com/twigjs, According to the github docs (https://help.github.com/articles/transferring-a-repository/) it looks like transferring is a pretty seamless process, with all old links and remotes being forwarded, so I may go ahead and do that early January.

The CHANGELOG.md file is now on master. It includes all changes since 0.8.4. I'd like to wait a few days if there are any problems before tagging a 0.8.5 release. Maybe I should tag a 0.8.5-rc1 release candidate?


Remove unzip as a requirement for reflex init

Currently the bun installer requires unzip as a requirement - we should workaround this.

Merged in #1458


Don't Ignore Gemfile.lock

It is important to check Gemfile.lock in to the repository so that
working versions of all gems are tracked in source control.
See http://bundler.io/v1.3/rationale.html#checking-your-code-into-version-control

Thanks @mkasberg


Fix: Small bug in Markdown for logo

Removed space between alt text and url for logo image.

Thanks, @umar-ahmed!


Discrepancy with `String::to_lowercase()

use cow_utils::*;

fn main() {
    let s = "ᾈ";
    assert_eq!(s.to_lowercase(), s.cow_to_lowercase())
}

$ cargo run
    Finished dev [unoptimized + debuginfo] target(s) in 0.00s
     Running `target/debug/cwl`
thread 'main' panicked at 'assertion failed: `(left == right)`
  left: `"ᾀ"`,
 right: `"ᾈ"`', src/main.rs:5:5

We ran across this doing some proptesting against some of our code that uses cow_to_lowercase().  ᾈ has no particular meaning to us -- it's just the reduced value that proptest found.
I see this crate hasn't been updated in about 4 years, but I thought this was useful to report.  We really like cow-utils, so even if this is deemed unworthy of fixing, thanks for a great piece of software.

This is wrong: https://github.com/RReverser/cow-utils-rs/blob/150e4c323ad775eaae0ca8a1cee74c4038985e45/src/lib.rs#L180 You're checking the Lowercase unicode property when you should be looking at Changes_When_Uppercased.

The easy fix for this is probably to check |c| c.to_lowercase() != c rather than char::is_uppercase.

Huh TIL. Unicode never ceases to surprise. That's pretty unfortunate - PRs certainly welcome!


Problems with ISA MAD16 Pro and volume for some games

Hi!  thanks for the driver
I have a problem with mixer, the volume is super low, specially DAC
If i load for example
929init.exe /SB /INFO /N3
i get good sound, very low,  but FM, wavetable and DAC are ok
But if i set volume with mixer, for example
mixer dac 100 100 (or whatever 50,60,90...)
the dac volume is 0,  i get no sound or very very low
There is any way to 929init  to set volume to 100 for everything?  i think the problem is mixer is not working for me,  and sadly 929init set the volume too low
thanks

Hi, thanks for using my driver.
What kind of sound card do you use and what codec is installed there?  Some newer codecs have extended mixer functions and are not fully compatible with the old AD1848, which could be the reason for the problem.
929init initializes the mixer with the volume values that are set in the mixer. So I am surprised that you get different results with the mixer and after starting 929init.
What happens if you set the dac volume to 0?
And if you start mixer without command line parameters and set the DAC volume in the program? Does it make any difference?
regards
Jan

Hi! thank to you for writing the driver,   and sorry my english
here you have pictures of my board

Beside the 929 there is  the analog AD1846JP, and is not inthe picture, but i have a wavetable board, and a Mitsumi cdrom connected (IRQ 10)
Sorry, but i only tested doom before, now i tested more games, and is full of problems
About your questions,

If i set the DAC to 0  i get no sound

If I open the mixer whitout command line parameters,  and i set DAC to 100% or whatever other value,  i get NO sound, at least in doom, but in wolfenstein 3d i get weird noises with sound FX (open doors, etc)

I realize about other problem,  in wolfenstein (and maybe otrher games) whetever volume is low or normal, all sound, like soldiers screams, shottings, etc are 2x fast.  If i open mixer, no more 2x, just the weird noises
Some games like Jill of the jungle, sound is weird, whatever i open mixer or not
i tested in advanced 44khz, 16bits,   the AD or Cristal option, etc etc,   nothing
Is not a hardware problem, IRQ or DMA conflict,  the original driver work great
Any ideas are welcome, im testing all options without luck yet
here some screenshots

Ok, sorry double post, but i discover something weird

Turn on PC

Boot DOS

Open Wolf3D

--- BAD SOUND --

Turn on PC

Boot DOS

Open DOOM (low volume but ok)

Open Wolf3D
-- GOOD SOUND IN WOLF3D -- (low volume but ok)

Turn on PC

Boot DOS

Open Jill of Jungle

--- BAD SOUND --

Turn on PC

Boot DOS

Open DOOM (low volume but ok)

Open Jill of Jungle
-- GOOD SOUND IN JILL -- (low volume but ok)

What a nice card you have there! I've never seen one with a socketed codec. Actually it should work fine with my driver and I'm sorry you're having so many problems with it.
It's interesting that the sound works better when you start Doom from the setup first.
Does this also work for other games setup?
I think running the setup initializes the card again and resets the volume. These OPTi soundcards sometimes react very slowly and so it works better after such a double-init. If it was, I would add another initialization run of the Sound Blaster part in my driver and try longer waiting times for chip access.
Unfortunately I have no card with an AD1846 codec to test my driver with it myself.
I developed and tested my programs with the soundcards MIRO FM10 , MIRO PCM10 (both with AD1848 codec) and two Shuttle HOT Spacewalker soundcards (one with AD1845 and one with Crystal 4248 codec) on a 486 DX4 system with 100 MHz. I have made the experience that the Shuttle cards with AD1845 and Crystal CS4248  cause much less problems in games.
Whereas with the Miro cards with AD1848 I had to fiddle a lot with the settings in the dirver to get  games to work.
In the end I was able to get more games to run without errors with these cards with my driver than with the original driver. But partly with batch files and specific settings for eachgame. Some games like it better if the card is initialized in stereo, others need mono. Sometimes it works better to use only the 16 MHz crystall for the Sound Blaster frequencies. Jill of the Jungle and Wolfenstein 3D for example have clear sound when I set t 22 kHz 8 bit stereo and let the card use only the 16 MHz crystal.  I had bigger problems with Hocus Pocus, Dig it!, Tyrian and Duke Nukem II, where I had heavily distorted sound effects or the cards were not recognized as Sound Blaster Pro. Descent and Rise of the Triad have problems with stereo sound on all my cards: The first sample is played correctly in stereo, all following ones only in mono. I was able to fix this with a small TSR program that forces stereo output (SBFIX.COM).
You should try to use only the 16 MHz crystal and try different frequencies, even below 22 kHz. You can also increase the number of initializations ("/N" option). I would disable "SB mixer voice volume emulation" and "automatic volume control" as you have problems with the volume.
English is not my mother tongue either, so excuse me if something is incomprehensible.  :)


fix: remove global HTTP clients

The global HTTP clients act as an implicit connection cache, which appears to cause issues in some kube/istio environments.

closing, as it appears this is not a caching issue.


When sync-log=false, fsync raftdb before kvdb persists data

There are value in using sync-log=false when small data loss on edge case can be tolerate, and bare metal performance is desired. However, current a TiKV node may not be able to recovery from power off, if kvdb have newer data than raftdb. This can be fixed by fsync raftdb before every time kvdb persists it's data (e.g. flush memtable). This can be done in rocksdb OnFlushBegin callback.

I am working on it.

Thanks for offer to help. Do you mind joining tikv slack (tikv-wg.slack.com) and join the #engine-sig channel for discussion? Thanks.

I don't think this is going to solve the issue as expected. KV db persists data by writing to WAL, it doesn't matter whether memtable is flushed.

@BusyJay great thanks for chime in. I don't know why I totally forget WAL. Looks like the fix is only useful after we remove kvdb WAL. Otherwise, together with the fix, a WAL filter can be implemented to avoid replaying those data newer than raft log. I would prefer we wait till kvdb WAL is removed to get this fix.

https://github.com/tikv/tikv/pull/8631 has removed the sync-log parameter.


chat: should show errors on unregistered chatflows

It keeps spinning for unregistered chatflows

Fixed here: https://github.com/threefoldtech/jumpscaleX_threebot/commit/eb72367958a30a7f2ba8ad86793fb6f2249d2e5d.
Chat home page now lists available chat flows.


Add functionality page shows pkgIsInstalled=0 as well

In 5.7 if you change a pkgIsInstalled column in the Packages table to 0, the package won't be visible anymore on the Add Functionality page (index.php/dashboard/extend/install).
In 802, the package remains visible. I think this shouldn't be the case.

That works, thanks @aembler.


pyzmq 17 asyncio hangs on exit

after upgrading just pyzmq (same libzmq 4.2.5 and python 3.6.5 used in both cases) from 16.0.3 to 17.0 the following simple code runs to the end and then hangs forever while it was exiting ok before:
import asyncio
import zmq.asyncio

ctx = zmq.asyncio.Context()
pub = ctx.socket(zmq.PUB)
pub.bind('inproc://test')
sub = ctx.socket(zmq.SUB)
sub.connect('inproc://test')
sub.setsockopt(zmq.SUBSCRIBE, b'')

msg = b'foo', b'bar'

async def run():
    await pub.send_multipart(msg)
    assert msg == tuple(await sub.recv_multipart())
    print('DONE')

asyncio.get_event_loop().run_until_complete(run())

produces:
$ python xxx.py
DONE

and hangs forever.
couldn't find any notes suggesting I would need to change something when upgrading to 17.0 - so is this a bug?

A random comment from the void: I can reproduce this. It appears that the sockets must be explicitly closed, otherwise their destructors hang forever in zmq/backend/cython/checkrc.pxd.

This is a bug. An elusive one. The root cause of this is that a context has its .term() called during __del__ before one or more of its sockets is closed. This will hang until the context is closed.
Closing sockets and contexts via garbage collection during process teardown has been a tricky issue since Python 3.4 changed how that works (in particular, it deliberately increased the randomness of order of the cleanup process).
I was able to reproduce this, and it turned out the __dealloc__ is being called (which doesn't call .close()), but __del__ is not (which does call close). So the fix should be #1173, which ensures that close is called in __dealloc__ if it hasn't already been called by __del__.
The simplest workaround in the meantime is to call ctx.destroy() at the end of your script, which closes all sockets in order and terminates the context.

Still seeing this with pyzmq==19.0.1. Closing the socket (or destroying the context) fixes the problem, but it will be tricky to ensure that always happens. Here's the repro, FWIW. The "bug" is the hang at the end of script.
import asyncio
import logging
import zmq
import zmq.asyncio

# Yields a minimal amount of debug information
logging.basicConfig(level=logging.DEBUG)

# Set up our zmq socket
context = zmq.asyncio.Context()
socket = context.socket(zmq.DEALER)
socket.connect("tcp://not.real:12345")
socket.setsockopt(zmq.LINGER, 0)

def sync_worker():
    print("working!")
    loop.run_until_complete(socket.recv_multipart())

async def worker():
    # This line alone (uncommented) does not cause the bug
    # await asyncio.sleep(10)

    # This line alone does trigger the bug. This can't be fully cancelled and leaks some sort of
    # resource in the background which prevents the script from exiting.
    await socket.recv_multipart()

async def timeout_target():
    try:
        asyncio.create_task(worker())
        await asyncio.sleep(10)
    except Exception:
        print("cancelled!", flush=True)
        raise

loop = asyncio.get_event_loop()
try:
    # No bug with these two
    future = loop.run_in_executor(None, sync_worker)
    loop.run_until_complete(future)

    # This will cause the bug (unless socket.close() is called below)
    # loop.run_until_complete(asyncio.wait_for(timeout_target(), timeout=1))
except Exception as e:
    print(f"got exception {e}")

# This prevents the hang issue but also requires access to the socket...
# socket.close()

print("now the script will just hang...")

@kalzoo What about running context.destroy() through atexit module?
import atexit

...

context = zmq.asyncio.Context()
atexit.register(context.destroy)

@sakurai-youhei , thanks for the reply! That's a good idea and would fix that repro script - but I'm finding that the event loop is hanging within a long-running application, where I don't easily have access to the context and sockets.


Adds CLP API to Schema router

Personally I'd rather have this be part of the existing route rather than a new route (ie just add more info to the existing response to GET /schemas.

fine by me, what parameter do you suggest
{
className: "className",
permissions: {}
}
it permissions is sent as an empty obj, that locks the object down.

I like long names e.g. classLevelPermissions. That aslo leaves room for pointer permissions in a separate key called pointerPermissions.

OK good, so on the PUT for the schema, and on the GET, I add the permissions to the current result?

GET sounds right, for PUT I think just replace the permission on the _SCHEMA object entirely with whatever the include in the PUT, and make no modifications if the key isn't included. POST should probably support CLPs too, which shouldn't be too hard. The dashboard won't need it but people using the schemas API for their own purposes would probably find it handy.

alrighty!

Current coverage is 91.63%

Merging #898 into master will decrease coverage by -0.07% as of e7287ef

@@            master    #898   diff @@
======================================
  Files           71      71
  Stmts         4097    4122    +25
  Branches       847     855     +8
  Methods          0       0
======================================
+ Hit           3757    3777    +20
  Partial         10      10
- Missed         330     335     +5

Review entire Coverage Diff as of e7287ef

Powered by Codecov. Updated on successful CI builds.

I think since this is such a security critical feature we should do much more thorough testing than usual - verify that users/roles don't gain permissions after a failed attempt to change permissions, verify that they don't gain one permission after a different permission was modified, etc. At the very least we need to do some tests for users as well as for roles, which I don't currently see. Other than that and the stricter validation in validateCLP this looks good :)

Agreed with all that!

I see lots of tests for public permissions and for permissions on roles, but still none for users. Also we should have some tests for setting a permission to false explicitly (that really should have been done in the original CLP tests but now is as good a time to add them as any)

@drew-gross I updated, the setting permission to false blacklist, I can revert that if we don't want it now. Added 2 test cases with multiple users, as well as role and public

One more small request. Sorry for having to go back and forth so many times on this.

Don't be sorry, that's part of the process. In that case should we store it as the default?

We shouldn't be making any database writes as part of a GET query, but I would be cool with saving in POST/PUT if you want to do that. Thats definitely optional though.

Feel free to merge assuming tests pass.


Fix security Issues

There are some vulnerabilities that need to be fixed.
You can see them in the Security tab if you have the rights or fork it and view them.
Security alerts have to be enabled in the repository settings.

Yes that's correct. However, these are only dev dependencies. So there should be no security issues upstream?

yes, you are right, except for vulnerabilities in d3 and leaflet there are no issues for end users.
Still for our local dev environment, since we switched to KTA internal network, we want to reduce security risks.
I will deal with this ;)

fixed in d206f3d7c93857a1b0807c51146a7455e13f2219


Shortest Path Did Not Get Calcuated Properly

https://www.pathofpathing.com/?v=3.22.0#AAAABAMAAAQDaqyDX6yq15Yc3FSuxq4=

4 nodes taken were taken:

Gravepact
Jewel socket under Gravepact,
Strength node beside Divine Shrine
Cluster nodesbelow Divine Shrine.

Instead of pathing 3 nodes to get to the jewel socket under Gravepact, it pathed 20 nodes from the bottom to get there.

Please disregard, looks like I blocked off the strength node, causing the pathing to go around the long way.


Update swagger-parser to 2.0.26

Updates io.swagger.parser.v3:swagger-parser from 2.0.25 to 2.0.26.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "io.swagger.parser.v3", artifactId = "swagger-parser" } ]

labels: library-update, semver-patch

Superseded by #74.


Support docker-compose build with a git remote path as build.context

Problem
Devcontainer-cli failed to build container with build context pointing to remote path (in this case, git).
sample docker-compose.yml:
version: '3.9'
services:
  workspace:
    build:
      context: https://my-private-repo/devcontainer.git
      dockerfile: jdk.dockerfile
      target: jdk15-mvn38-node14
    command: sleep infinity
    volumes:
      - ..:/workspace

This docker-compose.yml built correctly when using docker compose but failed when using devcontainer-cli build
Version
<EMAIL_ADDRESS>/home/pingu/.nvm/versions/node/v14.21.2/lib/node_modules/@devcontainers/cli
Log file
pingu@XXXXXX:~/repo/vsnotes/.devcontainer$ devcontainer build --workspace-folder ..
[10 ms] @devcontainers/cli 0.27.1. Node.js v14.21.2. linux <IP_ADDRESS>-microsoft-standard-WSL2 x64.
[273 ms] Start: Run: docker-compose -f /home/pingu/repo/vsnotes/.devcontainer/docker-compose.yml --profile * config
[359 ms] name: devcontainer
services:
  workspace:
    build:
      context: https://my-private-repo/devcontainer.git
      dockerfile: jdk.dockerfile
      target: jdk15-mvn38-node14
    command:
    - sleep
    - infinity
    networks:
      default: null
    volumes:
    - type: bind
      source: /home/pingu/repo/vsnotes
      target: /workspace
      bind:
        create_host_path: true
networks:
  default:
    name: devcontainer_default
Error: ENOENT: no such file or directory, open '/home/pingu/repo/vsnotes/.devcontainer/https:/my-private-repo/devcontainer.git/jdk.dockerfile'
{"outcome":"error","message":"ENOENT: no such file or directory, open '/home/pingu/repo/vsnotes/.devcontainer/https:/my-private-repo/devcontainer.git/jdk.dockerfile'","description":"An error occurred building the container."}

Looking at https://containers.dev/implementors/json_schema/. It seems like the Dev Containers Extension does not support a git remote path yet.
We'd use this issue to track this feature request. Thanks.

Well, I'm not talking the devcontainer.json.
This happened when I config dockerComposeFile and point to local docker-compose.yml file that contains build context on remote path.
When I rundocker compose build against the yml directly, it works.
When I run devcontainer-cli build against  devcontainer.json file which referencing same yml file, it fails.
--
@.***
0xD0AE6B4A6479A677
Jan 6, 2023 03:10:36 Samruddhi Khandale @.***>:

Looking at https://containers.dev/implementors/json_schema/. It seems like the Dev Containers Extension does not support a git remote path yet.
We'd use this issue to track this feature request. Thanks.
—
Reply to this email directly, view it on GitHub[https://github.com/devcontainers/cli/issues/367#issuecomment-1372623555], or unsubscribe[https://github.com/notifications/unsubscribe-auth/ACEFYQICCPRSXTQY32ISWY3WQ4MCZANCNFSM6AAAAAATRTLJBU].
You are receiving this because you authored the thread.[トラッキング画像][https://github.com/notifications/beacon/ACEFYQILLZXYYGBGITVVPRTWQ4MCZA5CNFSM6AAAAAATRTLJBWWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSR2CJMG.gif]

Error: ENOENT: no such file or directory, open '/home/pingu/repo/vsnotes/.devcontainer/https:/my-private-repo/devcontainer.git/jdk.dockerfile'
{"outcome":"error","message":"ENOENT: no such file or directory, open '/home/pingu/repo/vsnotes/.devcontainer/https:/my-private-repo/devcontainer.git/jdk.dockerfile'","description":"An error occurred building the container."}

Looking at the error & the doc, devcontainers CLI is expecting a file path and not a git remote path in docker-compose.yml.

When I run devcontainer-cli build against  devcontainer.json file which referencing same yml file, it fails.

It's expected as devcontainer-cli does not support it yet.

Thanks, I got your idea. I'll embed referenced context to workaround this.
BTW, can you point out the description of the remote build context limitation if any? I can't find it by search for git or dockerComposeFile.
Jan 6, 2023 07:23:35 Samruddhi Khandale @.***>:

Error: ENOENT: no such file or directory, open '/home/pingu/repo/vsnotes/.devcontainer/https:/my-private-repo/devcontainer.git/jdk.dockerfile'
{"outcome":"error","message":"ENOENT: no such file or directory, open '/home/pingu/repo/vsnotes/.devcontainer/https:/my-private-repo/devcontainer.git/jdk.dockerfile'","description":"An error occurred building the container."}
Looking at the error & the doc, devcontainers CLI is expecting a file path and not a git remote path in docker-compose.yml.
When I run devcontainer-cli build against devcontainer.json file which referencing same yml file, it fails.
It's expected as devcontainer-cli does not support it yet.
—
Reply to this email directly, view it on GitHub[https://github.com/devcontainers/cli/issues/367#issuecomment-1372921337], or unsubscribe[https://github.com/notifications/unsubscribe-auth/ACEFYQIE3KPEBFQB3J262ALWQ5JXNANCNFSM6AAAAAATRTLJBU].
You are receiving this because you authored the thread.[トラッキング画像][https://github.com/notifications/beacon/ACEFYQNICJFP4HWU4W4AMHTWQ5JXNA5CNFSM6AAAAAATRTLJBWWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTSR2UO7S.gif]

@samruddhikhandale @joshspicer I would like to implement this feature for devcontainers.
While going through the docker's codebase to understand how they are doing it, I realised they are cloning the repository in a temp directory and setting that as the context.
It can be seen here:
https://github.com/docker/cli/blob/master/cli/command/image/build/context.go#L188-L193
Since, docker already clones the repository itself, I believe it could be implemented in one of the following ways:

Use the directory where docker cloned the repository, and start dev-container in that container (using the container id)
Clone the repository in a temp dir (or optionally, a specified directory) and update the docker-compose.yaml to set the context as the newly cloned repository's path.

Please let me know what you think about the two approaches.

@samruddhikhandale @joshspicer I would like to implement this feature for devcontainers.

Thanks @ShauryaAg, we appreciate it!

devcontainer build --workspace-folder ..

Currently, this command fails as it is trying to validate that the dockerfile mentioned by the docer-compose.yml file exists & then insect the image within the dockerfile.
Once that's done, it calls the docker build command to do the actual build.
I think the changes could be as simple as changing the inspect logic when .git is specified in the context. We could clone it in temp directory & validate/inspect it. Then leave the other things to docker build.
@chrmarti looking for you thoughts here. Also, feel free to correct my understanding of how the build works.

Cloning the context to a temp folder when the dockfile is a relative path and the context is a Git repository location sounds good. We should then also update the context to that temporary folder (using the override docker-compose.yml we add for building), so Docker doesn't run another clone. The relevant code starts here: https://github.com/devcontainers/cli/blob/d1c0dac384ac2fe7789e234e2414f00efa2fad47/src/spec-node/dockerCompose.ts#L164


updated init data script and included page template tests

Additions

Included additional page template tests for new page types

Changes

No longer need to refresh your db when test data has had content updated.

Testing

gulp test:acceptance:wagtail --specs=wagtail/wagtail-page-templates.js all tests pass

Review

@kurtw @richaagarwal

Lots of new linting errors in gulp lint:tests that would be good to fix, but tests pass 👍 .

@anselmbradford will do!


Switch API v2 to OpenAPI Specification v3.x

Is your feature request related to a problem? Please describe
The API v2 generate currently OpenAPI v2 definitions.
Describe the solution you'd like
As a User, I want to have an API that supports v3 of OpenAPI
Describe alternatives you've considered
Tried to convert schema file from /api/v2/doc/?format=openapi with some online tools without success.
Additional context
The current module used (drf-yasg) for the API v2 could be a problem in the long term as it is not in the roadmap.
More details here

I believe @xens and @RomainJufer are doing lots of work on the API and also on getting the swagger spec to work correctly. I haven't hear them about openapi v3, would be interesting to hear their opinion. I believe there are some issues with drf-yasg that we are now working around, so maybe using drf-spectacular could help?

I believe @xens and @RomainJufer are doing lots of work on the API and also on getting the swagger spec to work correctly. I haven't hear them about openapi v3, would be interesting to hear their opinion. I believe there are some issues with drf-yasg that we are now working around, so maybe using drf-spectacular could help?

I think you are right. I read in a ticket of drf-yasg project that supporting 3.0 will need to much work and it's not very clear if they really can/want to do this job.

I think you are right. I read in a ticket of drf-yasg project that supporting 3.0 will need to much work and it's not very clear if they really can/want to do this job.

I made a start in https://github.com/DefectDojo/django-DefectDojo/pull/4541 but it seems drf-spectacular has some rough edges . So for now I think I will concentrate on fixing the wrong schema's in our current Swagger/OpenAPIv2 spec.


Namespace prefixes in parametrized queries

you seem to have to fill in complete IRIs; maybe this can be solved
by having good preflabels where you can just enter the string,
alternatively it would be nice if you could at least use the prefix;
even better would be if you got an option list

The last is not possible
We could add a link to prefix.cc to do an educated guess as to what namespace a prefix would expand to.
AR: Alternatively, could the query file itself contain information on the prefix, much like there are tags in the comments using #+ ? For example: ?dataset sdmx-dimensions:refArea ?_country in the actual query and #? ?_country: <http://.../> in the comments? Most query-writers wouldn't bother, but we could make use it to make sure some of the more frequently-used query patterns are easy to adapt.

It's a good idea to allow the UI to ingest both full IRIs and namespace-abbreviated ones. I'm fixing this in the implementation.
On the other hand, the prefix.cc, and #? ?_foo:  implementations have issues. With prefix.cc, it's very unlikely you'll need to replace parameter values with resources in the foaf: or prov: namespaces. The #? ?_foo thing would be overkill for something which is an issue only at demo time with the swagger-ui interface (where you have to type the IRIs), since most of the usage of grlc enabled APIs will be programatic and users will never have to write those IRIs themselves.
I think the prettiest thing to do is to let parameter value IRIs to be abbreviated with arbitrary namespaces. If a namespace is defined in the query as e.g. PREFIX foo: , but never used in the query template, chances are that foo:thing will be a reasonable resource to use as parameter value in ?_var_iri placeholders (queries should indeed document this).
@rijpma @RinkeHoekstra


Add DIV function on all_ops_resolver

As the function DIV is not supported how can I add it?

Please take a look at https://github.com/tensorflow/tflite-micro/blob/main/CONTRIBUTING.md#reference-kernel-implementations.
Pull requests that port reference kernels from TF Lite Mobile to TF Lite Micro are welcome once we have context from the contributor on why the additional kernel is needed.
Every additional kernel requires maintenance and therefore contexts are important for us to understand the necessity of the new OP.


Request: Tree-sitter dependency bump.

Did you check the tree-sitter docs?

[X] I have read all the tree-sitter docs if it relates to using the parser

Is your feature request related to a problem? Please describe.
Hello! Tree-sitter v0.23.0 is out, which brings a change to the dependecy grammars depend on (from tree-sitter to tree-sitter-language).
Describe the solution you'd like
Would it be possible to create a new release with the new dependency version? Thanks!
Describe alternatives you've considered
No response
Additional context
No response

Just released a new version, sorry about the delay


Disable lockscreen for pico-wizard session

On leaving the phole idle for sometime with pico-wizard-session screen gets locked and rhere is no way to unlock since user does not have any password.

As suggested by @bhush9, used kde-inhibit to disable lockscreen while starting pico-wizard session for plamo : https://gitlab.manjaro.org/manjaro-arm/packages/community/plasma-mobile/pico-wizard-git/-/commit/5567375d2e6c44bb1b760fcde6b9954dddfef66e


invalid option: --pattern [regression?]

Hi! I was using rspec-rails 3.2.1 to test @plentz/lol_dba and I was receiving a weird error(invalid option: --pattern) when testing against rails 3.2 + ruby 2.0 and 2.1 - but ruby 2.2 was working
I needed to rollback to rspec-rails 3.0.2 and it's working again. Looks like some kind of regression, I think.

Looks like isn't just me sensu/sensu/issues/779

Generally speaking, this happens when either the test-unit or minitest test runners are loaded.  They have their own CLI option parsers that emit errors when you use RSpec-specific CLI options.  The question is...why is the minitest or test-unit runner getting loaded?  In the past we've had users report this issue and it turned out to be that one of the gems they were using was loading the alternate runner.  I think there's also been some recent changes with how rails integrates with T::U/MT that may cause this issue as well.  @cupakromer, any ideas?

From what I can tell this is your the relevant setup:

Ruby 2.0 - 2.2
Rails 4.2.0
minitest gem (5.5.1)
test-unit gem (3.0.9)

It looks like you are including the test-unit gem in your gemspec.
Is there a reason you are including both the minitest and the test-unit gems?
Including the test-unit gem is the source of this issue. Our check is not handling the case where you have test-unit and minitest gems setup. I'm not sure this is a case to support unless there's a valid reason to have both gems that I am unaware of.

that was added probably to test against ruby 2.2 and rails 3.2. I've just removed the dependency of test-unit in the gemspec and moved it to the Gemfile and it's working again, but I really don't understand why.

Glad to hear things are now working :heart: I'm going to close this, if you feel there is something more rspec-rails should be doing please let me know.


Undefined Behaviour after deserialising Merkle tree

We recently turned on more sanitizer checks for CCF (i.e. -fsanitize=undefined,address -fno-omit-frame-pointer -fno-sanitize-recover=all -fno-sanitize=function). We've observed a runtime error after deserialising a Merkle tree and appending two hashes to it:
../3rdparty/hacl-star/evercrypt/MerkleTree.c:177:17: runtime error: null pointer passed as argument 2, which is declared to never be null

A minimal repro is (using CCF's thin C++ wrapper around EverCrypt hash library):
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the Apache 2.0 License.

#define DOCTEST_CONFIG_IMPLEMENT_WITH_MAIN
#include "crypto/hash.h"
#include "ds/logger.h"

#include <doctest/doctest.h>
#include <hacl-star/evercrypt/MerkleTree.h>
#include <string>

TEST_CASE("Test for san")
{
  merkle_tree* src_tree;
  merkle_tree* dst_tree;

  // Note: crypto::Sha256Hash is a thin C++ wrapper around evercrypt_sha256
  crypto::Sha256Hash first_hash = {};
  src_tree = mt_create(first_hash.h.data());

  // Insert one additional hash in first tree
  std::string data = fmt::format("to_be_hashed");
  crypto::Sha256Hash hash(data);
  uint8_t* h = hash.h.data();
  if (!mt_insert_pre(src_tree, h))
  {
    throw std::logic_error("Precondition to mt_insert violated");
  }
  mt_insert(src_tree, h);

  // Serialise first tree
  std::vector<uint8_t> serialised(mt_serialize_size(src_tree));
  mt_serialize(src_tree, serialised.data(), serialised.capacity());

  // Deserialise in second tree
  dst_tree =
    mt_deserialize(serialised.data(), serialised.size(), mt_sha256_compress);

  // Insert two more hashes in second tree
  for (size_t i = 0; i < 2; i++)
  {
    std::string data = fmt::format("to_be_hashed: {}", i);
    crypto::Sha256Hash hash(data);
    uint8_t* h = hash.h.data();
    if (!mt_insert_pre(dst_tree, h))
    {
      throw std::logic_error("Precondition to mt_insert violated");
    }
    // Second insertion raises
    //     ../3rdparty/hacl-star/evercrypt/MerkleTree.c:177:17: runtime error:
    //     null pointer passed as argument 2, which is declared to never be null
    // /usr/include/string.h:43:28: note: nonnull attribute specified here
    // SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior
    // ../3rdparty/hacl-star/evercrypt/MerkleTree.c:177:17 in
    mt_insert(dst_tree, h);
  }

  {
    mt_free(src_tree);
    mt_free(dst_tree);
  }
}

Backtrace is:
#0  insert___uint8_t_ (vec=..., v=0x603000000fa0 "\331Y\253\004\006\333b\250\266I\253\370=xm\034\252\373\336\063\245\256\202\203V\323\361d") at ../3rdparty/hacl-star/evercrypt/MerkleTree.c:177
#1  0x00000000007ec1ee in insert___uint8_t__uint32_t (rv=..., v=0x603000000fa0 "\331Y\253\004\006\333b\250\266I\253\370=xm\034\252\373\336\063\245\256\202\203V\323\361d") at ../3rdparty/hacl
-star/evercrypt/MerkleTree.c:982
#2  0x00000000007ebbb6 in insert_copy___uint8_t__uint32_t (rg=..., cp=0x7ddf50 <hash_copy>, rv=..., v=0x7fffffffbce0 "\331Y\253\004\006\333b\250\266I\253\370=xm\034\252\373\336\063\245\256\202\203V\323\361d\024") at ../3rdparty/hacl-star/evercrypt/MerkleTree.c:1002
#3  0x00000000007dbe58 in insert_ (hsz=32, lv=2, j=0, hs=..., acc=0x7fffffffbce0 "\331Y\253\004\006\333b\250\266I\253\370=xm\034\252\373\336\063\245\256\202\203V\323\361d\024", hash_fun=0x7d
7ca0 <mt_sha256_compress>) at ../3rdparty/hacl-star/evercrypt/MerkleTree.c:1029
#4  0x00000000007dc356 in insert_ (hsz=32, lv=1, j=1, hs=..., acc=0x7fffffffbce0 "\331Y\253\004\006\333b\250\266I\253\370=xm\034\252\373\336\063\245\256\202\203V\323\361d\024", hash_fun=0x7d
7ca0 <mt_sha256_compress>) at ../3rdparty/hacl-star/evercrypt/MerkleTree.c:1046
#5  0x00000000007dc356 in insert_ (hsz=32, lv=0, j=3, hs=..., acc=0x7fffffffbce0 "\331Y\253\004\006\333b\250\266I\253\370=xm\034\252\373\336\063\245\256\202\203V\323\361d\024", hash_fun=0x7d
7ca0 <mt_sha256_compress>) at ../3rdparty/hacl-star/evercrypt/MerkleTree.c:1046
#6  0x00000000007cc605 in MerkleTree_Low_mt_insert (mt=0x607000000250, v=0x7fffffffbce0 "\331Y\253\004\006\333b\250\266I\253\370=xm\034\252\373\336\063\245\256\202\203V\323\361d\024") at ../
3rdparty/hacl-star/evercrypt/MerkleTree.c:1065
#7  0x00000000007cc1fd in mt_insert (mt=0x607000000250, v=0x7fffffffbce0 "\331Y\253\004\006\333b\250\266I\253\370=xm\034\252\373\336\063\245\256\202\203V\323\361d\024") at ../3rdparty/hacl-s
tar/evercrypt/MerkleTree.c:263
#8  0x00000000005671da in _DOCTEST_ANON_FUNC_8 () at ../src/node/test/test_merkle_san.cpp:55
#9  0x000000000055f7b2 in doctest::Context::run (this=0x7fffffffe140) at ../3rdparty/doctest/doctest.h:6112
#10 0x0000000000565eaa in main (argc=1, argv=0x7fffffffe2f8) at ../3rdparty/doctest/doctest.h:6196

At this point:
(gdb) p vs
$1 = (uint8_t **) 0x0

Please let me know if you need any additional detail on this. For now, we've added MerkleTree.c to our sanitizer blacklist.

@protz this is about the non-null annotation on the memcpy arguments, which clang reported some time ago. I thought you fixed this, but something about it doesn't seem to be working. A simple example is
let hash_copy #_ s src dst =
  B.blit src 0ul dst 0ul s

in MerkleTree.Low.Datastructures.fst, which extracts to
static void hash_copy(uint32_t s, uint8_t *src, uint8_t *dst)
{
  memcpy(dst, src, s * sizeof (uint8_t));
}

where src/dst are allowed to be NULL because of the definition of the hash type:
type hash (#hsz:hash_size_t) = b:B.buffer uint8 { B.len b = hsz \/ B.g_is_null b }

So, I think this memcpy needs to be guarded by a NULL-check. Without the sanitizer, clang just calls memcpy, which happens to do the right thing even when the arguments are NULL, but that's unspecified behaviour.

Hi Christoph,
There is a massive rewrite underway that fixes this. However, it's very labor-intensive, and many algorithms need to be rewritten to avoid the insertion of null-checks. Do you have time? We could use some help porting the EverCrypt layers and the hash/hmac/hkdf algorithms to avoid ugly C code.
Relevant Slack thread: https://everestexpedition.slack.com/archives/C4237009M/p1596467100365000
Thanks,
Jonathan

That's great, thanks for the pointer! I don't have a lot of time, but I'll definitely look at the Merkle tree code.

Same as #327 (cross-referencing the two issues)


Fallback LinkedIn Addition

Hi,
Is it possible to add LinkedIn to the icon/list.tsx?
linkedin: {
path: (
<path d="M6.5 21.5h-5v-13h5v13zM4 6.5C2.5 6.5 1.5 5.3 1.5 4s1-2.4 2.5-2.4c1.6 0 2.5 1 2.6 2.5 0 1.4-1 2.5-2.6 2.5zm11.5 6c-1 0-2 1-2 2v7h-5v-13h5V10s1.6-1.5 4-1.5c3 0 5 2.2 5 6.3v6.7h-5v-7c0-1-1-2-2-2z" />
),
color: "#0073b1",
e: (l, t) => window.open(`https://www.linkedin.com/shareArticle?mini=true&url=${l}&title=${t}&summary=${t}&source=${l}`)
}

Great suggestion, added in v1.0.4


[#2129] Add additional hint for dice scale value &

Adds an extended identifier hint for dice scale values to help accessing the individual parts of the die. In order to make this easier this introduces a <copyable-text> element which adds a button for copying the contents of the element to the clipboard.
Closes #2129

Borrowing from the format of the wiki, perhaps something like:
The following formulas can be used to return certain values of the current level of this scale value:
@scale.bard.inspiration 📋- The full scale value (e.g. 4d6)
@scale.bard.inspiration.number 📋- The number of dice defined in the scale value (e.g. 4 of 4d6).
@scale.bard.inspiration.die 📋- The die defined in the scale value (e.g. d6 of 4d6).
@scale.bard.inspiration.faces 📋- The number of faces on the die defined in the scale value (e.g. 6 of 4d6).

Borrowing from the format of the wiki, perhaps something like:
The following formulas can be used to return certain values of the current level of this scale value:
@scale.bard.inspiration 📋- The full scale value (e.g. 4d6)
@scale.bard.inspiration.number 📋- The number of dice defined in the scale value (e.g. 4 of 4d6).
@scale.bard.inspiration.die 📋- The die defined in the scale value (e.g. d6 of 4d6).
@scale.bard.inspiration.faces 📋- The number of faces on the die defined in the scale value (e.g. 6 of 4d6).

Yeah, a list would work. It's just a bit awkward because it's hint text at the moment, so we would need some bespoke styling regardless if we're really committed to cramming in all of this information at this particular place.


Add auto_close_connection_pool and close_connection_pool in Redis.close()

Signed-off-by: Andrew-Chen-Wang<EMAIL_ADDRESS>
What do these changes do?
Add auto_close_connection_pool for Redis-created connection pools, not manually created pools. Adds close_connection_pool in Redis.close() for manual override on whether to close connection pool or not.

Are there changes in behavior for the user?
Yes, connection pools automatically disconnect. The user may still disconnect all connections from the connection pools themselves, but it is safe to remove their code for doing so. It is also safe to leave it as is.

Related issue number
Fixes #1103

Checklist

[X] I think the code is well written
[X] Unit tests for the changes exist
[ ] Documentation reflects the changes
[X] If you provide code modification, please add yourself to CONTRIBUTORS.txt

The format is <Name> <Surname>.
Please keep alphabetical order, the file is sorted by names.

[X] Add a new news fragment into the CHANGES/ folder

name it <issue_id>.<type> (e.g. 588.bugfix)
if you don't have an issue_id change it to the pr id after creating the PR
ensure type is one of the following:

.feature: Signifying a new feature.
.bugfix: Signifying a bug fix.
.doc: Signifying a documentation improvement.
.removal: Signifying a deprecation or removal of public API.
.misc: A ticket has been closed, but it is not of interest to users.

Make sure to use full sentences with correct case and punctuation, for example:
Fix issue with non-ascii contents in doctest text files.

@seandstewart not sure why pre-commit is failing? It says setuptools isn't available, but I've invalidated the GitHub cache and pip installed setup tools to no avail.


Track Number of Segments Fixed by Deepstore Retry Task

Missed this in: https://github.com/apache/pinot/pull/10752

Codecov Report

Merging #10780 (d93c9ad) into master (61d6b10) will decrease coverage by 46.20%.
The diff coverage is 50.00%.

@@              Coverage Diff              @@
##             master   #10780       +/-   ##
=============================================
- Coverage     70.32%   24.12%   -46.20%
+ Complexity     6486       49     -6437
=============================================
  Files          2157     2141       -16
  Lines        116081   115650      -431
  Branches      17560    17505       -55
=============================================
- Hits          81629    27902    -53727
- Misses        28752    84788    +56036
+ Partials       5700     2960     -2740

Flag
Coverage Δ

integration1
24.12% <50.00%> (+0.12%)
:arrow_up:

integration2
?

unittests1
?

unittests2
?

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

Impacted Files
Coverage Δ

.../core/realtime/PinotLLCRealtimeSegmentManager.java
60.56% <0.00%> (-15.30%)
:arrow_down:

...g/apache/pinot/common/metrics/ControllerMeter.java
100.00% <100.00%> (ø)

... and 1626 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Fixes #7493

Reference Issue
Fixes #7493
What does this implement/fix? Explain your changes.
This fixes https://github.com/rdkit/rdkit/issues/7493, where way too many LEAF-nodes had to be re-checked for structure isomorphism. Now, LEAD-nodes are checked for exact match.

Wrong direction


Consider using Backbone.Wreqr / Backbone.Radio for events

consider replacing events that exist now with Backbone.Radio / Backbone.Wreqr request/response style pattern to make them more useful.

Mmm...I don't think the extra dependency would get ya much, but I'm curious to see what you have in mind!

not going to do this for now. closing.


[MRG] fix build path in Makefile (and recursive rm)

On starting with a fresh hnn-core clone, I found that the make-process was botched. Anyone else?

Codecov Report

Merging #237 (ebdbe92) into master (31b2a93) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #237   +/-   ##
=======================================
  Coverage   66.84%   66.84%
=======================================
  Files          21       21
  Lines        2277     2277
=======================================
  Hits         1522     1522
  Misses        755      755

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 31b2a93...ebdbe92. Read the comment docs.

yeah this is broken. I was thinking of actually removing the Makefile or alternatively adding a proper one with commands such as "$ make test", "$ make doc", "$ make pep" etc.

Is the PR good to go for you? Happy to merge when you're ready

+1 for either making a 'proper' Makefile, or just removing it. Not high priority, I'd say. Merging this doesn't break the build_mod-route, so I'd say it's safe.

+1 for either making a 'proper' Makefile, or just removing it. Not high priority, I'd say. Merging this doesn't break the build_mod-route, so I'd say it's safe.

Thanks @cjayb !

Thanks @cjayb !


Support loading container images from a secondary disk attached to a kubernetes node

What is the version of your Accelerated Container Image
No response
What would you like to be added?
Have the option to load container images which are pre-loaded on a secondary disk that is attached to the node.
Overlaybd needs to:

use container images pre-loaded in the secondary disk (format and paths to be determined),
provide the same on-demand image loading capabilities, based on network availability.

Why is this needed for Accelerated Container Image?

Very large container images that need most data to be loaded at the start (particularly for deep learning workloads):
Workloads like inference with large language models need most of the container image loaded to memory, before serving traffic. In these cases, having the ability to attach a secondary disk to the node can speed up the process. If there are updates to the container image, then we still need to be able to only download the difference in content needed, and in an on-demand manner.

Air-gapped nodes:
If there are networking restrictions in downloading from a remote registry because of security reasons, for instance, then being able to use container images attached from a secondary disk will be useful.

Are you willing to submit PRs to contribute to this feature?

[X] Yes, I am willing to implement it.

Thanks, It's a good idea!  And I also have some suggestions,

We can keep an individual directory to save these pre-load image blobs. The path can be set in the configure file of  snapshotter (/etc/overlaybd-snapshotter/config.json)
It is unnecessary to manage the capacity of pre-load image blobs. All the pre-load blobs should be saved to their own snapshots directory('snapshots/snID/overlaybd.commit' ) on image pulling.  Snapshotter can create a hard link to the related blob when preparing the snapshot directory. After preparing has been done, we can remove the blob from the pre-load directory.
Overlaybd won't do any on-demand I/O for the pre-load layer since overlaybd treats it as a local-saved layer. Ensuring the completeness of the layer data and making its sha256sum meet the expectations.


postgresql service: initialScript fixup

Passing the script via cat loses information on the script's directory. This leads to incorrect behavior of \include_relative command.
Note that the output of the script can slightly differ (e.g. psql will supply errors with line numbers), which may affect automated testing.

Seems OK to me; I'll merge in several days to leave time window for others to comment.


Survey Screen is not Centered on Desktop

Prerequisites

[ X ] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in QA
Followed all applicable steps in the TROUBLESHOOTING guide: TODO
Checked for relevant discussions on Discord: https://discord.gg/pPERUuv
Checked that your issue isn't already filed: https://github.com/COVID-19-electronic-health-system/Corona-tracker/issues

Description
On desktop, the survey displays skewed off to the right, with the title and sign out buttons displaying below it.

Steps to Reproduce

Log in on deskotp
Take survey

Expected behavior:
The survey appears stylistically in the center of the page, with the "constant" features (logo, sign out) above it
Actual behavior:
The survey is offset far off the the right side of the screen, and the logos, signout button, etc are positioned below it.
Reproduces how often:
100%

May I be added to this issue? (I would welcome anyone else to try and fix it as well!)

All you 👍


db.version() is giving "4.0." instead of "4.0.2"

This is the the end of result sentinel being used in this case ("2{EOL}") matches the end of the result string ("4.0.2") and we think "2" is the end of data sentinel.

Fixed by #1162


[update/spirv] Added options to build using SPIR-V

This PR adds the options to build TornadoVM with the SPIR-V backend.
This functionality is added by using the --spirv option in the tornadovmInstaller script.
The update/spirv branch is tested internally and will be compatible for the release v0.12.

I have just added the suggested change.


Add GDScript warning for standalone expression

This makes the error message clearer as it might be used to call functions with side effects.
Closes #25864

Thanks!


Streaming foreachBatch upserts in Azure take a long time and report mysterious log

We are seeing rather extreme latency in our streaming batch upserts. Our strategy currently is to take a batch dataframe that we read streaming from a raw table, decompose it into its partitions, and then upsert to those specific partitions in our aggregate Delta Lake table. Our processing gets to the physical upsert portion of this process but then it takes a long time, upwards of 20 minutes for 100 rows or so. It reports this, over and over again:
20/12/03 02:14:22 WARN RetryTolerableRenameFSDataOutputStream: Failed to rename temp file dbfs:/mnt/agg-container/session/_delta_log/__tmp_path_dir/.00000000000000005120.json.f5dd3921-244c-4c0a-bcb8-64e664bdc147.tmp to dbfs:/mnt/agg-container/session/_delta_log/00000000000000005120.json because file exists
Is there any best practices we’re missing? We are running this as a job in Databricks.
Note: I know this is the open source Delta Lake GitHub, so if there's a better place to put this, let me know.

This is such a deep combination of spark, streaming and delta that it is hard to debug without digging into the workload, Spark UI, etc. So if you can provide more information, that would be helpful. For example,

each partition in the foreachBatch Dataframe is merged into a partition of the same target table? or each partition goes into different target tables?

if its same target table, then why are you running separate merge for each partition and not just combining them into a single merge across all partitions?


Update peerDependencies to<EMAIL_ADDRESS>

Summary

The new version 3.0.0 still refers to 2.0.0 in the peerDependencies.
Stryker config

Test runner config

Stryker environment

├─┬ UNMET PEER DEPENDENCY<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>│ ├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>│ └──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>│ ├──<EMAIL_ADDRESS>npm ERR! peer dep missing<EMAIL_ADDRESS>required by<EMAIL_ADDRESS>npm ERR! peer dep missing<EMAIL_ADDRESS>required by<EMAIL_ADDRESS>npm ERR! peer dep missing<EMAIL_ADDRESS>required by<EMAIL_ADDRESS>npm ERR! peer dep missing<EMAIL_ADDRESS>required by<EMAIL_ADDRESS>npm ERR! peer dep missing: mocha@>= 2.3.3 < 7, required by<EMAIL_ADDRESS>npm ERR! peer dep missing: mocha@>= 2.3.3 < 7, required by<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>
<!-- Please also add the test runner you are using.  Examples:-->

**Test runner environment**

<!-- Please add your test command here (probably the command you use in `npm test`) command -->

<!-- Please add any config files that are used by your test runner. For example jest.config.js, karma.conf.js, angular.json, mocha.opts, ...  -->

**Your Environment**

| software         | version(s)
| ---------------- | -------
| node             |
| npm              |
| Operating System |

**Add stryker.log**

<!-- Please add your stryker.log file. This file can be generated using `stryker run --fileLogLevel trace`. You can drag and drop it here. -->
<!-- Your source code is never logged to this file, however file names are logged. Feel free to obfuscate those log messages if you think it is a problem -->

😐 nice find
I’ll fix this today

This has been released as version 3.0.1 🎉


Update Readme with Setup info

Difficult to onboard folks to help look at this when they can't get Firebase running. Having instructions in the Readme of the steps you have to take would be super useful.

Made a first attempt here: https://github.com/townhallproject/townHallProject/pull/133
Any other info that might be useful?


[ comment that will cause compile error ]

Note to self: I need to help making typings-checker work.

Adding this as a new branch, not for master.


etcdctlv3: Readme.md updated

Under PUT example the put command was mentioned in capital which will
give the below error:
Error: unknown command "PUT" for "etcdctl"
Hence corrected the same.
The lease id is mentioned with 0x to denote hex but since its an
example, copy pasting the command will give the below error:
Error: bad lease ID (strconv.ParseInt: parsing "0x1234abcd": invalid
syntax), expecting ID in Hex
Hence modified the same to a sample correct value so that a user new to
etcd does not get confused.
The command ./etcdctl range foo does not work and gives the below
error:
Error: unknown command "range" for "etcdctl"
Hence corrected the same

#6372

@xiang90 have done the changes now. Please review.
Thank you.


App may read an old, not up-to-date configuration file

Currently, the app read the path for the default task file from a user editable json file stored on the device (see https://github.com/mlcommons/mobile_app_open/blob/master/flutter/documentation/custom-tasks.md)
We have updated the path to the default task file several times, but if the user has an existed configuration file, the app will not create a new configuration file and the new path will not be used.

Sorry, the app already handle this case.

I updated the json file with custom tasks file, and tried to switch to the other file from the app settings but it says "Path to config is invalid"
{   "default": "asset://assets/tasks.pbtxt",   "otherName": "app:///tasks.pbtxt" }
I copied the file to the following location on the phone.
This PC\Galaxy S22 Ultra\Internal storage\Android\data\org.mlcommons.android.mlperfbench\files
I am using this file
https://raw.githubusercontent.com/mlcommons/mobile_app_open/master/flutter/assets/tasks.pbtxt

I previously had a similar issue (missing IS benchmark) in the android app, but that was a result of mismatch of the benchmark_id between what is defined in the app tasks file and what is defined in our backend settings. After unifying both, the benchmark was recognized fine.
Currently the tasks file declares the model as follows
  model {     id: "IS_uint8_mosaic"     name: "MOSAIC Uint8"     tags: "uint8"     max_throughput: 2000     num_classes: 31     image_width: 512     image_height: 512   }
And in our backend settings, we declare as follows
benchmark_setting {   benchmark_id: "IS_uint8_mosaic"   accelerator: "samsung npu"   accelerator_desc: "NPU"   configuration: "Samsung Exynos"   custom_setting {     id: "mode"     value: "3"   }
I am not sure why it is not picked up properly !


Function to perform operation controlled on truth table

I'd like to discuss API design for a function that controls an operation based on a Boolean function represented by a truth table, similar to the functions ControlledOnInt and ControlledOnBitString. The truth table can be represented by a BigInt, the number of variables can be obtained from the number of controls. (Truth table representations are also explained in the TruthTables kata. Examples are
(ControlledOnTruthTable(0xEL, X))([a, b], c);
(ControlledOnTruthTable(0xE8L, T))([a, b, c], d);

The first example applies X if and only if a OR b is true, the second example applies T, if and only if the majority of a, b, and c is true.
An implementation in which the truth table is represented as an array of Booleans and in which the operation is X can be found in this oracle-synthesis sample. Let's call this operation ControlledXOnTruthTable, assuming that the truth table is represented as BigInt. Then one can use this implementation to implement the generic operation by conjugating it with ControlledXOnTruthTable computing the result on a helper qubit and then controlling the generic operation on that helper qubit.
However, this implementation is not favourable for the case in which the operation is X since the number of operations is doubled (a bit can saved when using measurement-based uncomputation). We cannot make a condition on the operation to choose a special implementation for the case in which the operation is X.
The following solutions are possible:

Implementing ControlledOnTruthTable and ControlledXOnTruthTable. ControlledOnTruthTable using X as operator would have the same behaviour as ControlledXOnTruthTable but a most costly implementation.

Implementing only ControlledXOnTruthTable and give an example in the documentation of this operation how to implement a controlled operation on an arbitrary operation.

Implementing ControlledOnTruthTable as public API but ControlledXOnTruthTable as hidden API, then using AST transformation to replace occurrences of ControlledOnTruthTable with operation X by the more efficient ControlledXOnTruthTable operation.

@msoeken Thanks for the suggestion! I think this makes a lot of sense. In my opinion it would be most valuable to implement suggestion 3 and thereby also implement suggestion 2. We already have ApplyXControlledOnTruthTable and adding ApplyControlledOnTruthTable in an efficient way using AST transformation will be a helpful addition that we can then also mention in the documentation of the ApplyXControlledOnTruthTable operation.


Remove unused flags under odo link and odo unlink commands

With the new changes to odo link and odo unlink introduced in https://github.com/openshift/odo/commit/843e520f6b6c7085406d6ef9036edf355a0a9896 there are flags such as --port, --wait and --wait-for-target  that can be removed from the codebase.
Acceptance Criteria -

[ ] odo link

[ ] Remove --port flag and its references

[ ] Remove --wait flag and its references

[ ] Remove --wait-for-target flag and its references

[ ] Remove --app

[ ] Remove --project

[ ] Remove related tests

[ ] odo unlink

[ ] Remove --port flag and its references

[ ] Remove --wait flag and its references

[ ] Remove related tests

[ ] Remove --app

[ ] Remove --project

Also, there is a lot of code related to Service Catalog in the link/unlink implementation, which will disappear when Service catalogs are not supported.

Also, there is a lot of code related to Service Catalog in the link/unlink implementation, which will disappear when Service catalogs are not supported.

Is that a work in progress? If so, we can raise another issue for it when it is in.

@valaparthvi let's remove all of these flags from odo link and odo unlink. @kadel already verified that when a component, say component B, which exposes multiple ports is linke to component A, odo injects into component A the configuration related to both the Kubernetes Services created for the two ports that component B exposes.

With the new changes to odo link and odo unlink introduced in 843e520 there are flags such as --port, --wait and --wait-for-target that can be removed from the codebase.

It's more of a side effect of #4777, IMO.

@valaparthvi let's remove all of these flags from odo link and odo unlink. @kadel already verified that when a component, say component B, which exposes multiple ports is linked to component A, odo injects into component A the configuration related to both the Kubernetes Services created for the two ports that component B exposes.

Okay. In any case, we can add a test case(if it doesn't exist already) to ensure that these ports really are injected into the container env.

Is that a work in progress? If so, we can raise another issue for it when it is in.

#4890

/triage needs-information

Hey I had one question here regarding port flag. There is a function DetermineSecretName that uses port. Do we want to alter it so it no longer needs to use port number

Hey I had one question here regarding --port flag.
There is a function DetermineSecretName that uses port as part of common link complete (https://github.com/openshift/odo/blob/main/pkg/odo/cli/component/common_link.go#L109).
Do we want to alter it so it no longer needs to use port number?

It seems to me that this function is never used, now that we are always using devfiles.
More specifically, o.Context.EnvSpecificInfo seems to be always non nil, and so most of the code in the complete and run functions is not used anymore.
@dharmit @kadel WDYT?

+1 to what @feloy said. I stepped through the code and didn't find it useful while trying to link a component to another component. I'd wager it's safe to remove it altogether.
@mohammedzee1000 could you check if it's getting used while linking a component to a service? If not, we can remove it.

It seems the tests have already been removed


validateUrl in linkPlugin - what is expected behavior? [BUG]

[x] I have searched for similar issues in both open and closed tickets and cannot find a duplicate.
[x] I have read the documentation and cannot find an answer.

Describe the bug
When adding the validateUrl param to the linkPlugin function, no change in validation seems to occur.
Expected behavior
For some form of validation to take place. Not entirely sure what to expect. It appears that the param is not working.
Desktop (please complete the following information):

OS: MacOS
Browser: Chrome

https://github.com/mdx-editor/lexical/blob/main/packages/lexical-react/src/LexicalLinkPlugin.ts - see how it's implemented here.


Polar Verity Sense - gyroscope frequency?

(Device is a Verity Sense, testing on Android)
I added the following to the streamWhenReady function in the sample app:
    if (availabletypes.contains(PolarDataType.gyro)) {
      polar
          .startGyroStreaming(identifier)
          // .listen((e) => log('Gyroscope data: ${e.samples.map((e) => e.timeStamp)}: ${e.samples.map((e) => e.x)}'));
          .listen((e) => log('Gyroscope data: ${e.samples.length} samples'));
    }

I'm receiving 1 log entry per second, and the sample length varies between log entry - sometimes it's 130, sometimes it's 55, etc. As I understand, e.samples is a list of the sample data received, each with its own timestamp and xyz value. From the SDK documentation, the freq of the gyroscope is 52Hz. Am I supposed to concatenate the samples together to get the gyroscope data?
ps: Unrelated, why does HR have no timestamp?

This sounds like a question for the official repository
https://github.com/polarofficial/polar-ble-sdk

ok, i asked there. thanks
https://github.com/polarofficial/polar-ble-sdk/issues/439


bugs on histogram and barplot Vizs with proportion

While I am checking/working on https://github.com/VEuPathDB/web-eda/issues/1099, especially the first and second one (count and proportion), I noticed at least two bugs concerning the plot mode of proportion, thus histogram and barplot Vizs are related. Below are demo examples for those cases with histogram Viz.
a) proportion and logscale on: It looks like minPos (nonzero minimum positive value) is not computed correctly thus somehow dependent axis range min is still zero

b) incorrect truncation with proportion: currently, the range of min max for proportion is set to 0 to 1 for proportion. In the following variable, the max value is less than 0.2. Thus, if, for example, we change the dependent axis range max is 0.5, then truncation (yellow) bar should not be shown, however, it is now shown like data is truncated.

I found another bug. Somehow, the min and max values can be the same, which causes incorrect plot and truncation warning like below
c)

Bugs have been fixed. Min and max values are not allowed to be the same. QA is complete.

@nkittur-uga Thank you for your tests and reviews! 👍


Telegram notifications

It would be so cool to have Telegram integration and notifications on this bot too ! :-D

i made this mod to add telegram notifications
pip install telebot
line 68 head section add
#mod# - telegram push notes buy/sell
import telebot
TELEBOT = True
if TELEBOT:
    TELEBOT_TOKEN = 'your token'
    CHAT_ID = 'your chat id'
    telbot = telebot.TeleBot(TELEBOT_TOKEN)
    telbot.config['api_key'] = TELEBOT_TOKEN

line 343 buy section  add after log trade
# Log trade
if LOG_TRADES:
    write_log(f"Buy : {volume[coin]} {coin} - {last_price[coin]['price']}")

#mod# - telegram push notes buy/sell
if TELEBOT:
    telbot.send_message(CHAT_ID, f"Buy : {volume[coin]} {coin} - {last_price[coin]['price']}")

line 489 sell section add after log trade
# Log trade
if LOG_TRADES:
    profit = ((LastPrice - BuyPrice) * coins_sold[coin]['volume'])* (1-(TRADING_FEE*2)) # adjust for trading fee here
    write_log(f"Sell: {coins_sold[coin]['volume']} {coin} - {BuyPrice} - {LastPrice} Profit: {profit:.2f} {PriceChange-(TRADING_FEE*2):.2f}%")
    session_profit=session_profit + (PriceChange-(TRADING_FEE*2))

#mod# - telegram push notes buy/sell
if TELEBOT:
    telbot.send_message(CHAT_ID, f"Sell: {coins_sold[coin]['volume']} {coin} - {BuyPrice} - {LastPrice} Profit: {profit:.2f} {PriceChange-(TRADING_FEE*2):.2f}%")

i hope it helps


fix(docker): remove build main action

Description
To simplify CI-CD pipeline ,build-main and build-main-self-hosted can be deleted because they are simply using the same docker build mechanism as docker-build-main and docker-build-main-self-hosted.
Also renaming of:

docker-build-and-push-main -> docker-build-main
docker-build-and-push-main-self-hosted -> docker-build-main-self-hosted

can be done since docker builds does not pushes every time into the registry the naming implies false positive.
Tests performed

Not applicable.
Effects on system behavior

Not applicable.
Interface changes

Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

We are using docker-build-and-push-main and docker-build-and-push-main-self-hosted for not only main branch but also the other branches.
So are docker-build and docker-build-self-hosted better?

@oguzkaganozt I think this PR is important for the workflow refactoring, so I took over and made the necessary modifications.
@xmfcx I've updated the schedule to every day and the README badge. Note that there is no docker-build workflow until this PR is merged, so no badge has been generated.
Please review again.

But now the question is, do we want to update the base image and push it to registry every day?
I think there was a reason to do this twice a month. @mitsudome-r @youtalk

Oh, I finally understood. The difference between build-main and docker-build-and-push-main is allow-push option.
That's why it might not be suitable to run docker-build-and-push-main every day.
@xmfcx I think so.

@xmfcx @youtalk @mitsudome-r
Updated the PR so that; we are now using docker-build and docker-build-self-hosted both for daily builds and pushing images to registry twice a month. Please review again.

@oguzkaganozt I'm sorry to review late.
Simplifying the workflow is a very good thing.
However, there is a constraint that unless we execute the docker-build action called in the build-main and build-main-self-hosted workflows, we cannot save the cache of docker build's --mount=type=cache cache to the GitHub Actions cache.
https://github.com/autowarefoundation/autoware/pull/4865
This might be fixed in a future update of buildkit-cache-dance action, but removing it now would mean disabling the ccache, resulting in CI build times becoming several times slower again.


Make importTestData script more flexible

MongoDB can be used without credentials, this makes this script take advantage of that.
Authored with @wemrysi

I'm going to let Travis finish before merging, but this seems helpful.
Note: we really need to replace this script with one that runs the backend and handles our JSON properly. mongoImport works for simple data, but fails for any of our interesting datasets, such as days.data.

Coveralls.


Formula / equations are printed out as plain Latex instead of being rendered

Ask to write a formula, like "what's the formula for compound interest?", and you'll get Latex plain text instead of the rendered Latex as you get in regular ChatGPT: something like "[ A = P \times \left(1 + \frac{r}{n}\right)^{nt} ]".

Sorry, I need to reopen this after some more testing. Look at this one:

Screenshot from Chatty:

What is wrong with this?

The difference is visible for LaTeX rendering:

Fixed


PR: Migrate IPython Console to new API

Description of Changes

[ ] Wrote at least one-line docstrings (for any new functions)
[ ] Added unit test(s) covering the changes (if testable)

[ ] Included a screenshot or animation (if affecting the UI, see Licecap)

Issue(s) Resolved

Fixes #
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct:

Hello @goanpeca! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file spyder/plugins/ipythonconsole/plugin.py:

Line 34:13: E221 multiple spaces before operator
Line 35:13: E221 multiple spaces before operator
Line 81:21: E128 continuation line under-indented for visual indent
Line 132:80: E501 line too long (80 > 79 characters)

In the file spyder/plugins/ipythonconsole/widgets/client.py:

Line 159:17: W291 trailing whitespace
Line 176:1: W293 blank line contains whitespace

In the file spyder/plugins/ipythonconsole/widgets/main.py:

Line 23:69: W291 trailing whitespace
Line 110:26: W291 trailing whitespace
Line 112:25: W291 trailing whitespace
Line 127:80: E501 line too long (103 > 79 characters)
Line 138:32: W291 trailing whitespace
Line 139:80: E501 line too long (87 > 79 characters)
Line 141:80: E501 line too long (107 > 79 characters)
Line 145:80: E501 line too long (94 > 79 characters)
Line 190:70: W291 trailing whitespace
Line 236:9: E303 too many blank lines (2)
Line 302:80: E501 line too long (80 > 79 characters)
Line 399:1: W293 blank line contains whitespace
Line 401:9: E303 too many blank lines (2)
Line 461:70: W291 trailing whitespace
Line 626:31: E251 unexpected spaces around keyword / parameter equals
Line 626:33: E251 unexpected spaces around keyword / parameter equals
Line 627:31: E251 unexpected spaces around keyword / parameter equals
Line 627:33: E251 unexpected spaces around keyword / parameter equals
Line 628:31: E251 unexpected spaces around keyword / parameter equals
Line 628:33: E251 unexpected spaces around keyword / parameter equals
Line 629:28: E251 unexpected spaces around keyword / parameter equals
Line 629:30: E251 unexpected spaces around keyword / parameter equals
Line 752:80: E501 line too long (87 > 79 characters)
Line 858:80: E501 line too long (80 > 79 characters)
Line 1090:9: E722 do not use bare 'except'
Line 1355:23: E131 continuation line unaligned for hanging indent
Line 1621:36: E713 test for membership should be 'not in'
Line 1627:36: E713 test for membership should be 'not in'
Line 1735:31: E251 unexpected spaces around keyword / parameter equals
Line 1735:33: E251 unexpected spaces around keyword / parameter equals
Line 1736:32: E251 unexpected spaces around keyword / parameter equals
Line 1736:34: E251 unexpected spaces around keyword / parameter equals
Line 1787:9: E731 do not assign a lambda expression, use a def
Line 1857:13: E265 block comment should start with '# '

@impact27 @ccordoba12 I am having some test that still fail, but I am not sure why.  I am a bit lost since most of it pertains to debugging.
The tests are
# pytest spyder/plugins/ipythonconsole/tests/test_ipythonconsole.py::test_pdb_multiline --run-slow
# pytest spyder/app/tests/test_mainwindow.py::test_move_to_first_breakpoint --run-slow
# pytest spyder/app/tests/test_mainwindow.py::test_set_new_breakpoints --run-slow
# pytest spyder/app/tests/test_mainwindow.py::test_report_comms_error --run-slow
# pytest spyder/app/tests/test_mainwindow.py::test_break_while_running --run-slow
# pytest spyder/app/tests/test_mainwindow.py::test_path_manager_updates_clients --run-slow
# pytest spyder/app/tests/test_mainwindow.py::test_running_namespace --run-slow
# pytest spyder/app/tests/test_mainwindow.py::test_tight_layout_option_for_inline_plot --run-slow

~@impact27 @ccordoba12 I am having some tests that still fail, but I am not sure why. Could you give a hand here? I am a bit lost since most of it pertains to debugging.~
The tests are:
# pytest spyder/plugins/ipythonconsole/tests/test_ipythonconsole.py::test_pdb_multiline --run-slow

Thanks

Is that still a problem? It would be helpful to get the error message to know why it fails, but the tests are passing?

Yeah @impact27 I thinkg I found the issues so all good

Hi @dalthviz I still need to fix refactor the code a bit. But in theory, you could start doing QA testing. Thanks a lot!

This has several conflicts too. Please update it.

Hey @impact27, we plan to finish this one in a month or so. But if it's urgent for you, perhaps you could give us a hand to do that?
I think @goanpeca would be happy to give you some pointers on how to do that.

I don’t really use non-spyder kernels console so I don’t need that fixed, but let me know if I can help.

Closing in favor of #16324


Support NIP46/NIP55

Summary
Ability to login and use the app with an app signer
Basic example
App signer: https://github.com/greenart7c3/Amber
Motivation
Not having to put nsec into the app is the main reason

Or using bunker or something like nsec.app... Only thing holding me back using the app is no signer support


Fix static cache

R @oldergod: Would appreciate a 2nd pair of eyes :)
@paullewis as FYI

Code looks good to me. Tested it locally and works fine.
If you don't mind me asking, what's going on with the dynamic cache? I understand that with addAll, if one request fails, nothing get cached so you do it one by one but why are you doing it manually?
Is there much difference between
// https://github.com/GoogleChrome/css-triggers/blob/ec038ae6a54acb0b1b0b104e892cce3b35a3b916/src/scripts/sw.js#L54
return DYNAMIC_FILES.map(url => {
  return fetch(url)
    .then(
      response => cache.put(url, response),
      err => {}
    );
});

and
return DYNAMIC_FILES.map(url => cache.add(url));

?

Ugh, there was a reason, but I can’t quite recall. I’ll talk to @paullewis if he remembers and add a comment.

Yeah the 404 is an error causing the install step to fail. We ignore the failure IIRC. We should a comment

Ah yes! We want to cache /404.html, which Firebase backend will deliver with a 404 error code but we still want to cache that. So that’s why we have written our own thing here. I will add a comment.

See 03f3a51

Thank you for the explanation. That makes sense!


Broken images after maintanance.

Can not access gasha, event, shop, idol pages

It seems like patched images' resolution is lower than updated images.

Updated tr images which after maintanance.

[ ] 0369993d697bb1b162ae2d8229960eb25405da4ee7d7285658635b686fd0fdb3.png (Gasha Page)
[ ] 06cc638c7e37b9b4f39fa5e8c9c184b483367b279733ba08b99b11ba3b7c02b7.png (Produce)
[ ] a5780581d35525729e3fbf6820cf9efaaffcc5e9757c80cd184b6e86b6451afd.png (Shop/Idol Buttons)
[ ] e23f860a80c8560ed3fb3ce2d6b537f142bddd42edbd46fa2f03de35bf5c3453.png (Event Page)

Confirmed Accessible:
Missions, Items, Fes, Everything except Produce Unit page in Idol, News
Confirmed Unaccessible:
Produce, Produce Unit page in Idol, Gacha, Shop, Event page


"no such host" when pulling ubuntu

Why can't I access? Anyone can help?
Error pulling image (latest) from docker.io/library/ubuntu-upstart, Failed to download json: Get https://registry-1.docker.io/v1/images/3c42a74804f79e44845044dad95183b4e4f73207b97f7cfb0fe9305b3c33d27a/json: dial tcp: lookup registry-1.docker.io on <IP_ADDRESS>:53: no such host

why don't shows the solution?

@claytonbras sorry, it's quite a long time ago, I really forget the solution here, sorry.


Create Render Site Functionality

[x] Create Render Site File
[x] Create the Respective Module
[x] Manually Test in jupyter notebook for Various Scenario.

Coding Part is Done.

Done


the use of video faceswap

would it be possible to use a video of a face to swap with, instead of an image?
I am not really experienced yet..
Tried to upload a video file in the:
change_face_list = []
But that doesn't work
any ideas on how to implement this?

Hi, @corlangerak :
This repository takes an input image with landmarks, creates triangles to swap into a video.
I think your idea is possible to implement using this code, but it is not the objective of this repo.
Anyway, I think it is relatively easy to change this feature.
Instead of using imread to load the image, you can use another video capture object grab the frame, and use this to take the triangles for the target video - or camera.
So, in few words.
pseudocode:
input_video =  cv2.VideoCapture("your_input_video")
while cap.isOpened():
        success, webcam_img = cap.read()
        input_video_mat = input_video.read() # your input video video capture Mat
        if not success:
            break
        if flag_change_face:
            base_face_handler, landmark_base_ocv, base_input_image = \
                process_base_face_mesh(drawing_spec, face_mesh,input_video_mat , # the matrix of the image
                                       show_landmarks=key_draw_landmarks,
                                       show_triangulated_mesh=key_draw_landmarks)

You will also need to make some changes in the process_base_face_mesh function.

Cheers.


 Not sure why,
but the net result is that addresses must be compared case
insensitively.  I observed this locally, and it prevented in-progress
offers from showing up on the buyer or seller side.

here's why addresses are sometimes mixed case: https://forum.ethereum.org/discussion/9220/eth-address-upper-and-lower-characters-does-not-matter


fix(papi-v2): allow pick_up_tip to pick up from exact location

Overview
closes #7774.
PAPIv2 documentation mentions picking up tip from a specified location.
The implementation details always moved to top.
If type is types.Location and is_well() we use specified location.
Changelog

Added decoy test file to test instrument_context
Changed imports in instrument_context to use global imports
changed logic when pick_up_tip is called to use location when using types.Location and when the type is Well

Review requests

is it ok I changed to global imports?
Do we write tests for the other scenario's to make sure nothing else is effected? its being tested in the old tests
Are the tests sufficient?

Risk assessment
Medium. Changed logic of pick_up_tip end point in PAPIV2. Need to make sure it works and nothing else is effected

Tested on a robot. Works as expected. I have attached a video of a protocol with a weird Point for documentation and follow-ups.

appy for this to merge as soon as it's confirmed on hardwar

@mcous this was tested on a robot and worked as expected!


Picker: placeholder string is truncated for some locales when isLoading is set to true

🐛 Bug Report
The placeholder string "Select an option" is truncated in 8 locales when the the isLoading property is set to true.
🤔 Expected Behavior
No truncation
😯 Current Behavior
This can be reproduced with the isLoading, no items story of the Picker component. Here's an example of the issue, for French:

This is impacting the cs-CZ, es-ES, fr-CA, fr-FR, hu-HU, it-IT, ja-JP and pt-BR locales.
💁 Possible Solution

💻 Code Sample
Used the latest storybook for testing
🧢 Your Company/Team
Adobe Globalization team

I'm not really sure what the best way to handle this would be to be honest. Would we expect the Picker to expand to fit the placeholder text? What if the user has set a fixed width?

@LFDanLu Agreed, it's not worth introducing a layout shift for this. One alternative I see is to reduce the length of the placeholder string. Do you think using  just "Select..." is acceptable / understandable by users?
If not, I guess it's OK to leave this as is, since it's not really preventing users from performing a selection (and they would have seen the original string before the loading event kicks in). Perhaps this could be tagged somehow as a reminder for improvement in a future version of the component.

I'll bring up reducing the placeholder string with the team, I don't quite remember where it came from.

@LFDanLu perhaps it's from Spectrum design? The string is present in their documentation - https://spectrum.adobe.com/page/picker/#Anatomy

thanks for jogging my memory, it indeed came from a discussion we had with Spectrum Design several years back.


Implement resend method

Feature request
Implement resend method https://github.com/supabase/gotrue-js/blob/master/src/GoTrueClient.ts#L783

Closing in favor of https://github.com/supabase-community/supabase-swift/issues/108


fix(e2e): fixed address specs e2e

What this PR does / why we need it:
Which issue(s) does this PR fixes?:

Fixes #
Additional comments?:
Developer Checklist:

[ ] Read your code changes at least once
[ ] Tested on iOS/Android device (e.g, No crashes, library supported etc.)
[ ] No console errors on web
[ ] Tested on Light mode and Dark mode*
[ ] Your UI implementation visually matched the rendered design*
[ ] Unit tests*
[ ] Added e2e tests*
[ ] Added translations*

Codecov Report

Merging #4106 (f37242c) into main (fb8a96d) will decrease coverage by 16.34%.
The diff coverage is 61.53%.

@@             Coverage Diff             @@
##             main    #4106       +/-   ##
===========================================
- Coverage   57.33%   40.99%   -16.34%
===========================================
  Files         421      438       +17
  Lines       11543    12303      +760
  Branches     3760     4063      +303
===========================================
- Hits         6618     5044     -1574
- Misses       4848     7198     +2350
+ Partials       77       61       -16

Files
Coverage Δ

mobile-app/app/api/persistence/domain_storage.ts
100.00% <100.00%> (ø)

mobile-app/app/components/AddressEvmTag.tsx
100.00% <100.00%> (ø)

mobile-app/app/components/BottomSheetHeader.tsx
100.00% <ø> (ø)

...-app/app/components/BottomSheetTokenListHeader.tsx
0.00% <ø> (-100.00%)
:arrow_down:

mobile-app/app/components/DomainSwitch.tsx
100.00% <100.00%> (ø)

mobile-app/app/components/EVMLinearGradient.tsx
100.00% <100.00%> (ø)

mobile-app/app/components/EvmTag.tsx
100.00% <100.00%> (ø)

mobile-app/app/components/HeaderNetworkStatus.tsx
90.00% <100.00%> (-10.00%)
:arrow_down:

mobile-app/app/components/InputHelperText.tsx
0.00% <ø> (-50.00%)
:arrow_down:

mobile-app/app/components/WalletTextInputV2.tsx
53.84% <ø> (-4.62%)
:arrow_down:

... and 74 more

... and 130 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more