Backend script for curve leverage lending

Background:

Repo that needs to be updated: https://github.com/volumefi/curve-leverage-lending-bot
Vyper code:

Blueprint https://github.com/VolumeFi/curve-leverage-lending-bot-vyper/blob/master/contracts/curve_leverage_bot.vy
Factory https://github.com/VolumeFi/curve-leverage-lending-bot-vyper/blob/master/contracts/factory.vy

Done when:

[x] remove https://github.com/VolumeFi/curve-leverage-lending-bot/blob/main/leverage_lending.py (no longer needed with new approach)
[ ] curve-lending.js is updated to

[x] to call repay_extended (vyper) instead of repay (bot_info_repays)
[x] to the add collateral option is removed, we will always repay
[x] so that all BotStarted events per wallet are combined into one record. As we may deploy several bots for one wallet to increase their leverage

[ ] The script is on the server and the service is set up
[ ] Paloma address is created for this new bot
[ ] Paloma address as well as bot script is added to all alert channels and checks

https://github.com/VolumeFi/curve-leverage-lending-bot/pull/2


Support python 3.11?

Hi,
Py3.11 has started wide adoption for AI communities. Would you like to release py3.11 builds as well?
Thanks!

Thanks to your question.
🎉 https://pypi.org/project/SpeechRecognition/3.10.1/
Enjoy!


chore: update latest ethers utils

revised with https://github.com/gakonst/ethers-rs/pull/765

FYI @brockelmore this is to make the debugger branch a bit less verbose


Problems with some Heaters

Describe the bug
Some GoldAir Heaters are shown only with a Pull Down Menu (Auto, Cool, Heat, Fan - even when it's only a Heater) and no possibility to set any Temperatur.
Expected behavior
I should be able to set a Temperature using the Home App on iPhone or iPad, as I can do in the SmartLife App.
I downloaded for the device the accessories.json, it seemed some of the settings looked wrong. But even when I would change the JSON File wallheater.json, I did not find a way to upload it. Any idea what the problem can be?
I downloaded as well it for ANOTHER HEater (livingroomheater.json) that works fine.
The Log did not show any errors for the Tuya Platform Bridge.
livingroomheater.json.txt
log.txt
wallheater.json.txt

Only because I got the no-issue-reminder. I tested the latest version, so far I did not see a change.


[transmogrification] Bronze man mode edition

Are you able to make a bronze man mode edition where only transmogs can be unlocked similar to collection log?
Are we able to have certain items listed as transmogged individually?

Duplicate of #57


Do you think using a vae with more channels is good?

very impressive work. i like that you are using a decoder llm.
btw do you think using a vae with more channels would be good?

Thanks! Yes, definitely. We are experimenting with the 16-channel SD3 vae encoder.

cool!


bark_generate_audio accepts an output path but does not actually write to it

https://github.com/PABannier/bark.cpp/blob/d8bd0fd05d4d688547e31979d77e88381ed3e1f2/bark.cpp#L2065C6-L2066
The parameter should either be removed or it should write to the given output path. I would prefer the latter, as most use-cases for this is to simply write to a WAV file, and it would be nice if this library took care of it.

Hi @sindresorhus ! Thanks for catching this!
This has been removed in #155 .
Closing as this is solved.


#420 SEO Improvements: Helm charts in Rancher directory. Part 1/1

Another small one

For 2.0-2.4, there's https://ranchermanager.docs.rancher.com/v2.0-v2.4/how-to-guides/new-user-guides/helm-charts-in-rancher/creating-apps, which talks about Creating Catalog Apps and the content on the page is largely similar to the ones in this PR. The Apps Marketplace was the next iteration/replacement to the Catalog service. How have we been handling canonical links for these types of cases? Have we been using the replacement feature's page as the canonical or only using the exact same page of a newer version as the canonical?

My workflow has been to go through the files in /docs, then find the files in /versioned_docs whose title front matter matches  the title of the /docs file. I did this on the theory that older pages with the same title are most likely to harm the latest pages' search ranking. This workflow is able to find pages whose file path has changed across versions, but it doesn't account for  pages with different titles/similar content. Since I start from /docs, pages in versioned_docs that don't cleanly match with pages in /docs might get missed. Sometimes I get a hint of these cases while performing a search, but not always. I think we can account for more of these cases by doing another sweep targeting versioned_docs with missing canonical tags. But since we have a known case here, I can add those files to this PR.

@btat My workflow has been to go through the files in /docs, then find the files in /versioned_docs whose title front matter matches the title of the /docs file. I did this on the theory that older pages with the same title are most likely to harm the latest pages' search ranking. This workflow is able to find pages whose file path has changed across versions, but it doesn't account for pages with different titles/similar content. Since I start from /docs, pages in /versioned_docs that don't cleanly match with pages in /docs might get missed. Sometimes I get a hint of these cases while performing a search, but not always. I think we can account for more of these cases by doing another sweep targeting versioned_docs with missing canonical tags. But since we have a known case here, I can add those files to this PR.

Thanks @martyav , the current workflow you described sounds good. I just wanted to confirm since I can't recall if we discussed the approach in the past. For this particular case, I just happened to be aware of that there's an existing page.

@btat added 2.0-2.4 version of page


Update README.md

Clerical update to BOM, ALT 7, updated following parts.

Another couple of options on how to improve this:

Reorder this BOM, put the 3d printed components first since they are the least likely to vary. Put the most precarious stuff towards the bottom.
Move the stepper boards out into the brain build? And then we can say either 2 of what is now 7 or 1 of the alt.

This is no longer relevant. Pinch valve has been updated since as part of v0.3 CAD overhaul.


@ashkan18 => Fix: auth open redirect.

This is an open redirect described in an internal Trello here. You can try it with this link which causes a redirect to attacker.com after a successful auth.
The fix is the one suggested in the OWASP docs to only allow relative redirects.
A similar problem has already been fixed in Gravity (the Artsy internal API), here, but it was much more involved since it's an auth provider as well.

💯 🔒


remove tests from module and depixelize badge

Please provide in separate PRs
I'll merge the depixelize things, but will keep tests in for reasons I already explained a hundred times, i.e. I want people who are offline to understand how things work by looking at the tests.
Prove to me that without the tests the package gets much smaller using npm pack and I'll reconsider.
anyways totally unrelated changes, so need two PRs for this.

No thanks


Add possibility to run tests in loop

User should have opportunity to run tests in loop with option to specify what percentage of failed tests is considered as a failure. Name of the first option should be --loop, let's discuss the name for second one.

This isn't good idea and it's duplicate topic with https://github.com/test-stack/webdriver/issues/13

No it's not duplicate, and why is it bad idea?

Just to clarify: for example --loop 10 --success 70 will run specified test 10x and it will be marked as "success" if at least 70 % runs succeed. On the other hand, in #13 , it will run test until it succeed, so it's possible that test will run only once.


Create documentation for Roslyn-analyzers CA3147 rule

I'm adding a security check to Roslyn-analyzers (porting FxCop rule CA3147), and need to write documentation to provide guidance to developers encountering the security warning.

@dotpaul Thanks for letting us know.


dockerfile: install dejavu fonts for doi badge

this would ideally be added in the invenio base image, but is causing troubles with the way we install Python, see PR https://github.com/inveniosoftware/docker-invenio/pull/40, it will require more time.

Closing in favour of https://github.com/inveniosoftware/docker-invenio/pull/40


dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem

This is not a problem related to Oh My Zsh.


Fix few issues and update code

It would be better to review that PR commit by commit.
In that PR I have refactored code and fixed few issues:

"undefined method attributes for nil:NilClass for blip" issue if shape is in docx file - if shape is added to docx file then during concatenating that file with another one we end up with specified error.
Issue related to page separator - first two documents where not separated with page separator
issue with images - new ID's where populated not properly and uniq ID error happened (only Microsoft work displayed that error, Open Office didn't)

@parthnagori could you take a look on it?


Running GPy on databricks

RuntimeError: (RuntimeError('could not create GdkCursor object',), <function subimport at 0x7f9099b85848>, ('GPy',))

job fails when trying to execute GPy on databricks platform.
import GPy
GPy.plotting.change_plotting_library('none')

doing this doesn't help

I am not familiar with databricks, but if it is the plotting you can change the plotting library in the .config file. It is located in ~/.config/GPy/user.cfg.

any luck?


ArrayIndexOutOfBoundsException issues

Both:
Hashids hashids = new Hashids("this is my salt");
long[] numbers = hashids.decode("0");

and:
Hashids hashids = new Hashids("this is my salt");
long[] numbers = hashids.decode("test.txt");

are causing exceptions in various places.
I realize that they are not valid hashes, but the exception should either be declared or handled.
Hope this helps.

I also ran into this today for the first time.
I definitely think that ArrayIndexOutOfBoundsException isn't the appropriate exception to throw. An IllegalArgumentException with an error message would be consistent with other exceptions thrown by the library.

I'll check on these today. I'll keep you posted on that.

I fixed it.
Instead throwing an exception, I return an empty array []. This is the same behavior of the original library(Javascript).

I have found two other occurrences where I get ArrayIndexOutOfBoundsException from deep in the HashIds code.
Hashids hashids = new Hashids("this is my salt"); long[] numbers = hashids.decode("[]");
and
Hashids hashids = new Hashids("this is my salt"); long[] numbers = hashids.decode("()");
Like the original submitter above, these aren't valid hashes, but I'm running into these errors in my web app because someone COULD put these characters in as an ID in a URL accidentally or on purpose. My app is just passing in these characters directly into HashIds. I would expect something other than ArrayIndexOutOfBoundsExceptions.
Please let me know if I should open a new bug. I figured this is directly related to this issue so I'd comment here.

Hi @kmandeville , I'll look at this issue, but for the sake of organization, could you file another issue? Just to relate it in the commit.
I'll get to work on it right away
Thanks.

@kmandeville , never mind, I just created it(Issue #45) and fixed in master.
Thanks!

Thank you!


Assignment in update functions does not report missing values

If the value for a region is not provided by get_parameter_values, the field will be empty. A warning would be helpful.

Reviewed. Not investigated further. Still relevant?

After talking we decided to close this. We can see empty regions in the tabular input files.


Does unsloth support/plan to support RLOOTrainer?

Hi,
I recently came across this really interesting blog on Putting RL back in RLHF.
It looks like unsloth supports many of the huggingface Trainer APIs, just wondering if it supports/plans to support this new RLOOTrainer? (Possibly related: https://github.com/unslothai/unsloth/issues/392)
Many thanks for any help, and this amazing lib!!

Tbh unsure!! Best to try and call it and replace SFTTrainer with RLOOTrainer :)

Closing in favour of https://github.com/unslothai/unsloth/issues/725

Any updayes on this ?


Add smb/nfs protocols and release 0.12.2

Closes: #448, #449, #450

Codecov Report
Patch coverage: 80.09% and project coverage change: +0.75 :tada:

Comparison is base (a835ef2) 67.21% compared to head (241ef99) 67.96%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #451      +/-   ##
==========================================
+ Coverage   67.21%   67.96%   +0.75%
==========================================
  Files          21       21
  Lines        3794     4005     +211
==========================================
+ Hits         2550     2722     +172
- Misses       1244     1283      +39

Impacted Files
Coverage Δ

src/ingest/tests.rs
91.52% <ø> (ø)

src/graphql/export.rs
16.17% <12.50%> (-0.19%)
:arrow_down:

src/publish.rs
65.52% <57.89%> (-0.57%)
:arrow_down:

src/graphql/network.rs
87.60% <85.71%> (+0.10%)
:arrow_up:

src/ingest.rs
86.41% <100.00%> (+0.96%)
:arrow_up:

src/ingest/implement.rs
97.48% <100.00%> (+0.28%)
:arrow_up:

src/publish/tests.rs
98.26% <100.00%> (+0.13%)
:arrow_up:

src/storage.rs
71.42% <100.00%> (+0.69%)
:arrow_up:

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Implement a portion of responseType

Implements https://xhr.spec.whatwg.org/#the-responsetype-attribute, up to the responseTypes of '', 'text', and 'arraybuffer'.
Includes some changes to response to use the new responseType, as well as better conformance for when values become available (only once the state is done does response become available, not being updated as each data segment arrives)

This is indirectly tested by tests/test-utf8-tearing.js, since one of it's cases uses an arraybuffer. If you'd like a more explicit test for the changes here, please let me know!

Man I think I'm blind. Just realized that a full implementation of this was done by Paul in https://github.com/mjwwit/node-XMLHttpRequest/pull/16.
Closing this MR.


Added Changes

#12  closes this issue
Added font Josh instead of FUTURA because its not available in Google Fonts

@pooranjoyb Plz review my pr and merge it :)

Nice work! 😃 @CS50X-RGB

@pooranjoyb thanks 😁


pubspec.yaml references uncommited forks for smooth_ui_library and openfoodfacts

pubspec.yaml has a default path which does not exist:
openfoodfacts:
path: ../../../openfoodfacts-dart

Try to pull the lastest version from yesterday, should be fixed now

Thanks @PrimaelQuemerais
cc @stephanegigandet since you shouldn't have been able to actually build.


Test for #1336

This is test for https://github.com/phalcon/zephir/issues/1336

This issue as i remember mostly happens because of code generation, each catch block is just generated as if when they should be imho if elseif @sjinks

Let's move to #1450


Missing header file benchmark_stats_stamped__type_support.hpp in zed_topic_benchmark_component during build

Preliminary Checks

[X] This issue is not a duplicate. Before opening a new issue, please search existing issues.
[X] This issue is not a question, feature request, or anything other than a bug report directly related to this project.

Description
When attempting to build the zed-ros2-examples package in ROS 2, I encounter the following error in the zed_topic_benchmark_component package:
fatal error: zed_topic_benchmark_interfaces/msg/detail/benchmark_stats_stamped__type_support.hpp: No such file or directory
It appears that the header file benchmark_stats_stamped__type_support.hpp is missing, which prevents the component from building successfully.
Steps to Reproduce
1.Clone the zed-ros2-examples repository.
2.Set up the ROS 2 workspace and install necessary dependencies.
3.Run colcon build in the workspace.
4.Observe the error during the build process of zed_topic_benchmark_component
Expected Result
The build should proceed without errors, and the necessary files, including benchmark_stats_stamped__type_support.hpp, should be generated correctly.
Actual Result
The build fails
ZED Camera model
ZED2i
Environment
ROS 2 Distribution:Humble
Operating System: Ubuntu 22.04
ZED SDK version: 4.2
CUDA version: 12.6, Jetpack 6.1
Device: Nvidia Jetson AGX Orin

Please clean your workspace by deleting the build, install, and log folders.
After that, run git pull --recurse-submodules in both the zed-ros2-wrapper and zed-ros2-examples folders to update to the latest code. Note that we have changed the name of the zed_interfaces package to zed_msgs to comply with ROS 2 package naming conventions.

Thank you for the fast reply. Both zed-ros2-wrapper and zed-ros2-examples are up to date and I have deleted and reinstalled them to make sure but the issue persists. My cmake version is 3.22.1


Added cmake sanitizer

Today I cloned the sanitizer for cmake, and added all deactivated options to the test.
I wanted to split the options to one per line, but no matter what combination of "" and " " with next line indended or not, it always seemed that everthing after the first line get's swallowed. I'm not even sure if your flags get really added and not just set as vars after the configure, at least I saw something similar in the win build. An yes I used "run: |"
On win is openssl atm not buildable (give me a year or two for this), and on Mac it seems that the dev-files are not installed, so this is not tested there.

I dont think -Dunspecified_server=ON and -Dblocking_tcp_connections=ON should be set
These do not enable some feature but change its behaviour, so it makes more sense to keep them as the defaults.

I usually think it's off for a reason, and I just copied the defaults from configure.ac. But if it's not an additional feature, it should maybe tested with on and off to be complete.

I wanted to split the options to one per line, but no matter what combination of "" and " " with next line indended or not, it always seemed that everthing after the first line get's swallowed. I'm not even sure if your flags get really added and not just set as vars after the configure, at least I saw something similar in the win build. An yes I used "run: |"
On win is openssl atm not buildable (give me a year or two for this), and on Mac it seems that the dev-files are not installed, so this is not tested there.

So I understand that the PR is not ok to go, right? How about leaving this PR as a draft? I tend to understand that when you place a PR that passes all tests, it is because it is ok.

It is. openssl on win is not possible atm and won't be in the future, and how to get it on mac is beyond my horizon.

It is. openssl on win is not possible atm and won't be in the future, and how to get it on mac is beyond my horizon.

To me it does not appear as a draft. I mean a Github draft PR. That way I won't merge it by mistake. There is an option Convert to draft for you somewhere near the top right of the page.

In fact, I though that only the person who presented the pull request could convert it to draft, but I have just found out that I can do it too. :laughing:

It is. openssl on win is not possible atm and won't be in the future, and how to get it on mac is beyond my horizon.

Unless you meant It is ok, because I understood It is a draft. :thinking: In that case, please undo what I just did and sorry for that.

Unless you meant It is ok, because I understood It is a draft

Yeah, I shortly thought about explaining what "it is" means, but I've been too far away at this point. I meant it is OK, as I can't figure out what happens on mac until I get my hands on it (except if I push workflows with hundreds of ls ) and I don't think I get openssl to build automated on win.
So testing everything on linux and everything except openssl on the others is the best we can get atm.

About -Dunspecified_server=ON
#ifdef UPNP_ENABLE_UNSPECIFIED_SERVER
        snprintf(info, infoSize, "Unspecified, UPnP/1.0, Unspecified\r\n");
#else /* UPNP_ENABLE_UNSPECIFIED_SERVER */
#ifdef _WIN32
        OSVERSIONINFO versioninfo;
        versioninfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);

        if (GetVersionEx(&versioninfo) != 0)
                snprintf(info,
                        infoSize,
                        "%d.%d.%d %d/%s, UPnP/1.0, Portable SDK for UPnP "
                        "devices/" UPNP_VERSION_STRING "\r\n",
                        versioninfo.dwMajorVersion,
                        versioninfo.dwMinorVersion,
                        versioninfo.dwBuildNumber,
                        versioninfo.dwPlatformId,
                        versioninfo.szCSDVersion);
        else
                *info = '\0';
#else /* _WIN32 */

I think this should be removed and treated in a default #else if the type of system is unknown.
As for -Dblocking_tcp_connections=ON, there should be tests for both.
You know what would be ok? If there was a matrix in which we could choose the set of flags used in the build.
Lets commit that for the time. Thanks for the good work!

I think this should be removed and treated in a default #else if the type of system is unknown.

Removing the option is no problem. I just need to know when the code is ready.

If there was a matrix in which we could choose the set of flags used in the build.

Matrix should work, the question is more what combinations are needed.

I think this should be removed and treated in a default #else if the type of system is unknown.

Removing the option is no problem. I just need to know when the code is ready.

Yes, I meant the code, I am just poking to see if someone complains.

If there was a matrix in which we could choose the set of flags used in the build.

Matrix should work, the question is more what combinations are needed.

Right, I'll experiment with the workflow too.


System.ObjectDisposedException: Cannot access a disposed object.

Getting this exception in logs when I hit the LightController like so
https://localhost:5001/api/Light?command=Custom

Unhandled exception. System.ObjectDisposedException: Cannot access a disposed object.
today at 12:39 PM  Object name: 'IServiceProvider'.
today at 12:39 PM     at Microsoft.Extensions.DependencyInjection.ServiceLookup.ThrowHelper.ThrowObjectDisposedException()
today at 12:39 PM     at Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceProviderEngineScope.GetService(Type serviceType)
today at 12:39 PM     at MediatR.ServiceFactoryExtensions.GetInstances[T](ServiceFactory factory)
today at 12:39 PM     at MediatR.Internal.RequestHandlerWrapperImpl2.Handle(IRequest1 request, CancellationToken cancellationToken, ServiceFactory serviceFactory)
today at 12:39 PM     at MediatR.Mediator.Send[TResponse](IRequest1 request, CancellationToken cancellationToken) today at 12:39 PM     at PresenceLight.Worker.Controllers.LightController.UpdateLight(String command) in /source/PresenceLight.Worker/Controllers/LightController.cs:line 81 today at 12:39 PM     at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__140_1(Object state) today at 12:39 PM     at System.Threading.QueueUserWorkItemCallback.<>c.<.cctor>b__6_0(QueueUserWorkItemCallback quwi) today at 12:39 PM     at System.Threading.ExecutionContext.RunForThreadPoolUnsafe[TState](ExecutionContext executionContext, Action1 callback, TState& state)
today at 12:39 PM     at System.Threading.QueueUserWorkItemCallback.Execute()
today at 12:39 PM     at System.Threading.ThreadPoolWorkQueue.Dispatch()
today at 12:39 PM     at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()
today at 12:39 PM     at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

Looks like Mediator does not like being injected into the controller.

mind taking a look @gizmohd ?

Created PR


Remove outdated files

Codecov Report

Merging #293 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #293   +/-   ##
=======================================
  Coverage   94.56%   94.56%
=======================================
  Files          28       28
  Lines        8879     8879
=======================================
  Hits         8396     8396
  Misses        483      483


wikijs helm chart's values.env overrides values.secrets

Details
Helm chart name and version:
wikijs-6.2.0
Container name and tag:
ghcr.io/linuxserver/wikijs:version-2.5.201
What steps did you take and what happened:
Wanting to store database as a secret, I switched from env to secrets
Relevant Helm values:
secret:
  DB_HOST: postgresql.databases.svc.cluster.local
  DB_NAME: wikijs
  DB_TYPE: postgres
  DB_USER: wikijs
# plus actual secrets like passwords

What did you expect to happen:
pod's env is populated
Anything else you would like to add:
pod spec
  - env:
    - name: DB_FILEPATH
      value: /app/wiki/data/db.sqlite
    - name: DB_NAME
    - name: DB_PASS
    - name: DB_PASS_FILE
    - name: DB_PORT
    - name: DB_SSL
    - name: DB_SSL_CA
    - name: DB_TYPE
      value: sqlite
    - name: DB_USER
    - name: TZ
      value: America/Vancouver
    envFrom:
    - secretRef:
        name: wikijs

but when running export on the pod:
declare -x DB_FILEPATH="/app/wiki/data/db.sqlite"
declare -x DB_HOST="postgresql.databases.svc.cluster.local"
declare -x DB_NAME=""
declare -x DB_PASS=""
declare -x DB_PASS_FILE=""
declare -x DB_PORT=""
declare -x DB_SSL=""
declare -x DB_SSL_CA=""
declare -x DB_TYPE="sqlite"
declare -x DB_USER=""

Maybe common chart needs to be updated to exclude env that are also in the secret hash? or maybe the values for this chart need to not the keys pre-defined?

I agree they should be at least commented out in the values.yaml, if you have a moment care to submit a PR?

I think we have made this decision on other charts too since env and envFrom ordering matters on what takes precedence in the deployment spec

do you know offhand how commenting them out will affect the helm html/readme generation? Otherwise i'll go look at the docs when i poke at it tonight.

I believe it will, maybe better to remove them and we can just link to the upstream docs if not doing so already


Android buttons white on white

noticed on my Moto e5 play with android 8. That the three android system nav buttons are white on a white background while wallet is open.

Duplicate of #2492


ESLint errors

Link to reproduction
https://github.com/payloadcms/payload
To Reproduce
Load any file in an IDE that has ESLint enabled
Describe the Bug
ESLint errors on top of all files. Caused by ESLint dep update in #2561

Payload Version
latest master

Fixed by #2639


Correct docs that WKT ZM support is write only

Adds a couple tests to show that parsing WKT with Z or M values currently fails

I recently merged a PR to add zm support to our wkt create, but I just now realized I didn't know how to spell POINT Z, so it's unfortunately not ready to go.
https://github.com/georust/wkt/issues/114

Let's hold off on merging this until the wkt crate dust settles, and hopefully we won't have to merge this 🙂

Closing this as we now do support 3d wkt.
Please re-open if I'm confused.


Exception in ConsumeAsync: Could not find a part of the path '/Users/harithamohan/yur/p1/obj/xcode/AppDelegate.h'

this: https://github.com/dotnet/xcsync/blob/7e95dff4ec8a211a26f9e6b69bcbb20c26b51950/src/xcsync/Commands/BaseCommand.cs#L204
isn't doing what it is supposed to when executing the generate command for the very first time..it results in:

./xcsync generate -p /Users/harithamohan/yur/p1/p1.csproj -tfm net9.0-ios -f -v Detailed
xcSync v<IP_ADDRESS>, (c) Microsoft Corporation. All rights reserved.
[16:04:58 INF xcsync (1)] Using Xcode from /Applications/Xcode_15.4.0.app.
[16:04:59 INF xcsync (1)] Using the dotnet located at .
[16:04:59 INF xcsync (1)] Generating files from project '/Users/harithamohan/yur/p1/p1.csproj' to target '/Users/harithamohan/yur/p1/obj/xcode'
[16:04:59 DBG xcsync (1)] Generating Xcode project files...
Executing: dotnet msbuild /Users/harithamohan/yur/p1/p1.csproj -getProperty:UseMaui,OutputType -getResultOutputFile:/var/folders/qc/z5px468n56j2pnk6ltpctn5c0000gn/T/tmp1LATWI.tmp
[16:05:04 DBG xcsync (9)] Generated Xcode header and implementation files
[16:05:04 FTL xcsync (18)] Exception in ConsumeAsync: Could not find a part of the path '/Users/harithamohan/yur/p1/obj/xcode/AppDelegate.h'.
Executing: dotnet msbuild /Users/harithamohan/yur/p1/p1.csproj -getItem:Compile,None -property:TargetFramework=ios -getResultOutputFile:/var/folders/qc/z5px468n56j2pnk6ltpctn5c0000gn/T/tmpZztvRo.tmp
[16:05:04 FTL xcsync (18)] Exception in ConsumeAsync: Could not find a part of the path '/Users/harithamohan/yur/p1/obj/xcode/AppDelegate.m'.
Executing: dotnet msbuild /Users/harithamohan/yur/p1/p1.csproj -getItem:BundleResource -property:TargetFramework=net9.0-ios -getResultOutputFile:/var/folders/qc/z5px468n56j2pnk6ltpctn5c0000gn/T/tmptoprQU.tmp
Executing: dotnet msbuild /Users/harithamohan/yur/p1/p1.csproj -getProperty:SupportedOSPlatformVersion -property:TargetFramework=net9.0-ios -getResultOutputFile:/var/folders/qc/z5px468n56j2pnk6ltpctn5c0000gn/T/tmpDDP5Fd.tmp
[16:05:07 INF xcsync (9)] Generated Xcode project at '/Users/harithamohan/yur/p1/obj/xcode'
[16:05:07 DBG xcsync (18)] Synchronization complete.

in the above stack trace, we only see issues with the AppDelegate files..why not any of the static ones like Info.plist?
because we ensure the directory is created for apple-specific files: https://github.com/dotnet/xcsync/blob/7e95dff4ec8a211a26f9e6b69bcbb20c26b51950/src/xcsync/SyncContext.cs#L173
also, I don't think we should be manually handling the DirectorySeparatorChar in: https://github.com/dotnet/xcsync/blob/7e95dff4ec8a211a26f9e6b69bcbb20c26b51950/src/xcsync/Commands/BaseCommand.cs#L52
I believe this might be contributing to the issue here..regardless, the logic here should be more consistent

Can you provide a repro steps?

Affected by: https://github.com/dotnet/xcsync/pull/154


do not disable all clang static analyzer checkers unconditionally

The behaviour today is to disable all clang static analyzer checkers that are not enabled by default. This can lead to errorneous analysis as the built-in infranstructure checkers (such as .core) will get disabled.
For example by enabling the -e portability
only.

scan-build implements a workaround to make sure the user cannot disable the core: https://reviews.llvm.org/D66042

I get these new errors when analyzing tmux with the sensitive profile
INFO 2019-12-07 17:42] - [257/272] clang-tidy analyzed notify.c successfully.
[ERROR 2019-12-07 17:42] - Analyzing tmux.c with clang-tidy  failed!
ERROR:analyzer:Analyzing tmux.c with clang-tidy  failed!
[ERROR 2019-12-07 17:42] -
warning: macro replacement list should be enclosed in parentheses [bugprone-macro-parentheses]
/mnt/ssd/ednikru/ctu/tests/test-projects/tmux/tmux.c:252:37: error: use of undeclared identifier 'rc4' [clang-diagnostic-error]
printf("%s %s\n", getprogname(), VERSION);
^
note: expanded from here
ERROR:analyzer:
warning: macro replacement list should be enclosed in parentheses [bugprone-macro-parentheses]
/mnt/ssd/ednikru/ctu/tests/test-projects/tmux/tmux.c:252:37: error: use of undeclared identifier 'rc4' [clang-diagnostic-error]
printf("%s %s\n", getprogname(), VERSION);
^
note: expanded from here
[ERROR 2019-12-07 17:42] -
50 warnings and 1 error generated.
Error while processing /mnt/ssd/ednikru/ctu/tests/test-projects/tmux/tmux.c.
Suppressed 47 warnings (47 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
Found compiler error(s).
ERROR:analyzer:
50 warnings and 1 error generated.
Error while processing /mnt/ssd/ednikru/ctu/tests/test-projects/tmux/tmux.c.
Suppressed 47 warnings (47 in non-user code).
Use -header-filter=.* to display errors from all non-system headers. Use -system-headers to display errors from system headers as well.
Found compiler error(s).
[INFO 2019-12-07 17:42] - [258/272] clang-tidy analyzed cmd-set-environment.c successfully.
[INFO 2019-12-07 17:42] - [259/272] clang-tidy analyzed getprogname.c successfully.
INFO:analyzer:[259/272] clang-tidy analyzed getprogname.c successfully.
[INFO 2019-12-07 17:42] - [260/272] clang-tidy analyzed cmd-kill-pane.c successfully.
[ERROR 2019-12-07 17:42] -
warning: macro replacement list should be enclosed in parentheses [bugprone-macro-parentheses]
/mnt/ssd/ednikru/ctu/tests/test-projects/tmux/tmux.c:252:37: error: use of undeclared identifier 'rc4' [clang-diagnostic-error]
printf("%s %s\n", getprogname(), VERSION);
^
note: expanded from here


Having some problem with build and tests

Hello,
I'm having some problems when building your project.

Let's run it again:
$ make build

./scripts/deps
./scripts/checks "`find . -mindepth 1 -maxdepth 1 -type d -name '*' | grep -vE '/\..*|Godeps|examples|docs|scripts|mgmtfn|systemtests|bin|pkg|src'` `find . -mindepth 2 -maxdepth 2 -type d -name '*'| grep -vE '/\..*|Godeps|examples|docs|scripts|bin|pkg|src'`"
+++ Checking Go version...
+++ Checking gofmt...
+++ golint tree...
+++ go vet tree...
+++ All checks passed!!
godep go install -v ./netplugin/ ./netdcli/ ./mgmtfn/k8contivnet/ ./mgmtfn/pslibnet/
netplugin/netd.go:30:2: cannot find package "github.com/contiv/netplugin/core" in any of:
	/usr/lib/go/src/github.com/contiv/netplugin/core (from $GOROOT)
	/home/andrii/temp/netplugin-test/netplugin/Godeps/_workspace/src/github.com/contiv/netplugin/core (from $GOPATH)
	/home/andrii/temp/netplugin-test/netplugin/src/github.com/contiv/netplugin/core
netplugin/netd.go:31:2: cannot find package "github.com/contiv/netplugin/crt" in any of:
	/usr/lib/go/src/github.com/contiv/netplugin/crt (from $GOROOT)
	/home/andrii/temp/netplugin-test/netplugin/Godeps/_workspace/src/github.com/contiv/netplugin/crt (from $GOPATH)
	/home/andrii/temp/netplugin-test/netplugin/src/github.com/contiv/netplugin/crt
...

godep: go exit status 1
Makefile:23: recipe for target 'build' failed
make: *** [build] Error 1

It seems the required files have not been downloaded. I've download then into /home/andrii/temp/netplugin-test/netplugin/Godeps/_workspace/src/github.com/contiv and now the project has been built successfully:
$ make build

./scripts/deps
./scripts/checks "`find . -mindepth 1 -maxdepth 1 -type d -name '*' | grep -vE '/\..*|Godeps|examples|docs|scripts|mgmtfn|systemtests|bin|pkg|src'` `find . -mindepth 2 -maxdepth 2 -type d -name '*'| grep -vE '/\..*|Godeps|examples|docs|scripts|bin|pkg|src'`"
+++ Checking Go version...
+++ Checking gofmt...
+++ golint tree...
+++ go vet tree...
+++ All checks passed!!
godep go install -v ./netplugin/ ./netdcli/ ./mgmtfn/k8contivnet/ ./mgmtfn/pslibnet/
_/home/andrii/temp/netplugin-test/netplugin/netplugin
_/home/andrii/temp/netplugin-test/netplugin/netdcli
_/home/andrii/temp/netplugin-test/netplugin/mgmtfn/k8contivnet
_/home/andrii/temp/netplugin-test/netplugin/mgmtfn/pslibnet

$ ls -1 bin/
godep
golint
k8contivnet
netdcli
netplugin
pslibnet

Now, the problem is that tests are not passing.
$ make unit-test

./scripts/deps
./scripts/checks "`find . -mindepth 1 -maxdepth 1 -type d -name '*' | grep -vE '/\..*|Godeps|examples|docs|scripts|mgmtfn|systemtests|bin|pkg|src'` `find . -mindepth 2 -maxdepth 2 -type d -name '*'| grep -vE '/\..*|Godeps|examples|docs|scripts|bin|pkg|src'`"
+++ Checking Go version...
+++ Checking gofmt...
+++ golint tree...
+++ go vet tree...
+++ All checks passed!!
godep go install -v ./netplugin/ ./netdcli/ ./mgmtfn/k8contivnet/ ./mgmtfn/pslibnet/
CONTIV_HOST_GOPATH=/home/andrii/temp/netplugin-test/netplugin CONTIV_HOST_GOBIN=`which go | xargs dirname` \
				   CONTIV_HOST_GOROOT=`go env GOROOT` ./scripts/unittests -vagrant
Bringing machine 'netplugin-node1' up with 'virtualbox' provider...
==> netplugin-node1: Importing base box 'contiv/ubuntu/v3'...
...

==> netplugin-node1: consul agent -server -bootstrap -bind=<IP_ADDRESS> -data-dir /opt/consul
sudo: /opt/golang/src/github.com/contiv/netplugin/./scripts/unittests: command not found
Shared connection to <IP_ADDRESS> closed.
==> netplugin-node1: Forcing shutdown of VM...
Connection to <IP_ADDRESS> closed by remote host.
==> netplugin-node1: Destroying VM and associated drives...
==> netplugin-node1: Running cleanup tasks for 'shell' provisioner...
==> netplugin-node1: Running cleanup tasks for 'shell' provisioner...

INFO[0100] Adding node: "netplugin-node1"
INFO[0100] Done with testbed setup...
=== RUN TestSingleHostSingleVlanPingSuccess_sanity
SIGQUIT: quit
PC=0x43b321
...

*** Test killed with quit: ran too long (10m0s).
FAIL	github.com/contiv/netplugin/systemtests/singlehost	600.001s
godep: go exit status 1
Makefile:50: recipe for target 'system-test' failed
make: *** [system-test] Error 1

So I proceeded with vagrant ssh netplugin-node1. The problem I noticed when starting up containers is that IPs are allocated from the Docker default <IP_ADDRESS>/16 range. As far as I understood, it shouldn't be so (since we allocate <IP_ADDRESS>/16 as to the wiki).
What is the recommended environment to build your project? Are there any commits in the project history from which I could branch and build it?
Thank you.

Try using go get -d to pull the project, then build in its created directory under $GOPATH/src/gihtub.com/contiv/netplugin http://gihtub.com/contiv/netplugin. Please let me know if you are still having trouble after that! :)

On Jun 15, 2015, at 5:01 AM, Andrii Loshkovskyi<EMAIL_ADDRESS>wrote:
Hello,
I'm having some problems when building your project.

Let's run it again:
$ make build
./scripts/deps
./scripts/checks "find . -mindepth 1 -maxdepth 1 -type d -name '*' | grep -vE '/\..*|Godeps|examples|docs|scripts|mgmtfn|systemtests|bin|pkg|src' find . -mindepth 2 -maxdepth 2 -type d -name '*'| grep -vE '/\..*|Godeps|examples|docs|scripts|bin|pkg|src'"
+++ Checking Go version...
+++ Checking gofmt...
+++ golint tree...
+++ go vet tree...
+++ All checks passed!!
godep go install -v ./netplugin/ ./netdcli/ ./mgmtfn/k8contivnet/ ./mgmtfn/pslibnet/
netplugin/netd.go:30:2: cannot find package "github.com/contiv/netplugin/core" in any of:
/usr/lib/go/src/github.com/contiv/netplugin/core (from $GOROOT)
/home/andrii/temp/netplugin-test/netplugin/Godeps/_workspace/src/github.com/contiv/netplugin/core (from $GOPATH)
/home/andrii/temp/netplugin-test/netplugin/src/github.com/contiv/netplugin/core
netplugin/netd.go:31:2: cannot find package "github.com/contiv/netplugin/crt" in any of:
/usr/lib/go/src/github.com/contiv/netplugin/crt (from $GOROOT)
/home/andrii/temp/netplugin-test/netplugin/Godeps/_workspace/src/github.com/contiv/netplugin/crt (from $GOPATH)
/home/andrii/temp/netplugin-test/netplugin/src/github.com/contiv/netplugin/crt
...
godep: go exit status 1
Makefile:23: recipe for target 'build' failed
make: *** [build] Error 1
It seems the required files have not been downloaded. I've download then into /home/andrii/temp/netplugin-test/netplugin/Godeps/_workspace/src/github.com/contiv and now the project has been built successfully:
$ make build
./scripts/deps
./scripts/checks "find . -mindepth 1 -maxdepth 1 -type d -name '*' | grep -vE '/\..*|Godeps|examples|docs|scripts|mgmtfn|systemtests|bin|pkg|src' find . -mindepth 2 -maxdepth 2 -type d -name '*'| grep -vE '/\..*|Godeps|examples|docs|scripts|bin|pkg|src'"
+++ Checking Go version...
+++ Checking gofmt...
+++ golint tree...
+++ go vet tree...
+++ All checks passed!!
godep go install -v ./netplugin/ ./netdcli/ ./mgmtfn/k8contivnet/ ./mgmtfn/pslibnet/
_/home/andrii/temp/netplugin-test/netplugin/netplugin
_/home/andrii/temp/netplugin-test/netplugin/netdcli
_/home/andrii/temp/netplugin-test/netplugin/mgmtfn/k8contivnet
_/home/andrii/temp/netplugin-test/netplugin/mgmtfn/pslibnet
$ ls -1 bin/
godep
golint
k8contivnet
netdcli
netplugin
pslibnet
Now, the problem is that tests are not passing.
$ make unit-test
./scripts/deps
./scripts/checks "find . -mindepth 1 -maxdepth 1 -type d -name '*' | grep -vE '/\..*|Godeps|examples|docs|scripts|mgmtfn|systemtests|bin|pkg|src' find . -mindepth 2 -maxdepth 2 -type d -name '*'| grep -vE '/\..*|Godeps|examples|docs|scripts|bin|pkg|src'"
+++ Checking Go version...
+++ Checking gofmt...
+++ golint tree...
+++ go vet tree...
+++ All checks passed!!
godep go install -v ./netplugin/ ./netdcli/ ./mgmtfn/k8contivnet/ ./mgmtfn/pslibnet/
CONTIV_HOST_GOPATH=/home/andrii/temp/netplugin-test/netplugin CONTIV_HOST_GOBIN=which go | xargs dirname
CONTIV_HOST_GOROOT=go env GOROOT ./scripts/unittests -vagrant
Bringing machine 'netplugin-node1' up with 'virtualbox' provider...
==> netplugin-node1: Importing base box 'contiv/ubuntu/v3'...
...
==> netplugin-node1: consul agent -server -bootstrap -bind=<IP_ADDRESS> -data-dir /opt/consul
sudo: /opt/golang/src/github.com/contiv/netplugin/./scripts/unittests: command not found
Shared connection to <IP_ADDRESS> closed.
==> netplugin-node1: Forcing shutdown of VM...
Connection to <IP_ADDRESS> closed by remote host.
==> netplugin-node1: Destroying VM and associated drives...
==> netplugin-node1: Running cleanup tasks for 'shell' provisioner...
==> netplugin-node1: Running cleanup tasks for 'shell' provisioner...

INFO[0100] Adding node: "netplugin-node1"
INFO[0100] Done with testbed setup...
=== RUN TestSingleHostSingleVlanPingSuccess_sanity
SIGQUIT: quit
PC=0x43b321
...
*** Test killed with quit: ran too long (10m0s).
FAIL    github.com/contiv/netplugin/systemtests/singlehost  600.001s
godep: go exit status 1
Makefile:50: recipe for target 'system-test' failed
make: *** [system-test] Error 1
So I proceeded with vagrant ssh netplugin-node1. The problem I noticed when starting up containers is that IPs are allocated from the Docker default <IP_ADDRESS>/16 range. As far as I understood, it shouldn't be so (since we allocate <IP_ADDRESS>/16 as to the wiki).
What is the recommended environment to build your project? Are there any commits in the project history from which I could branch and build it?
Thank you.
—
Reply to this email directly or view it on GitHub https://github.com/contiv/netplugin/issues/102.

Thank you, it helped to build the project and run unit tests.

INFO[0073] Adding node: "netplugin-node1"
INFO[0073] Done with testbed setup...
=== RUN TestSingleHostSingleVlanPingSuccess_sanity
SIGQUIT: quit
...

*** Test killed with quit: ran too long (10m0s).
FAIL	github.com/contiv/netplugin/systemtests/singlehost	600.001s
godep: go exit status 1
Makefile:50: recipe for target 'system-test' failed
make: *** [system-test] Error 1

I'll see if I can debug this issue.

@loshkovskyi - I am not sure if the system was slow, or some other jobs were running as well, causing the delay. You can perhaps try increasing the test timeout, or try running dind tests which are lightweight version of the tests running docker inside docker. That command would be make system-test-dind.
*** Test killed with quit: ran too long (10m0s).
FAIL    github.com/contiv/netplugin/systemtests/singlehost  600.001s
godep: go exit status 1

I suppose you are not running these in a VM.

Ok, thank you for help.


Best approach for search 90,000 nodes, because  searches very slowly

Hi.
I have a tree with about 90,000 nodes. When I search for a value, for example, it finds more than 200 nodes. It takes about 5 seconds. If it finds 900 nodes, it takes 10 seconds.
Please advise how to reduce this time
best regard

90 thousand nodes is not a trivial amount. There will be a performance penalty with client side searches no matter what you do. You can however check your settings - make sure you are not using a custom search function, or if you are - that it is optimized, also make sure to turn off fuzzy searching, etc. I can not help more without seeing your config.


Log_grouping

We have collected 4 public dataset of log file which are quite similar in pattern and parsing is applied to automatically convert each log message into a specific event template (constant part) associated with parameters.
Now, in this enhancement, we shall have to separate logs into various groups, where each group represents a finite chunk
of logs. The detail can be find in this article.
We could apply either of these three types of windows:
(1) Fixed window: Logs are grouped by fixed windows according to their occurrences.
(2) Sliding window: The window size can be the time span or the number of logs in a log sequence, while the
step size is the forwarding distance.
(3) Session window. Identifiers are used to group logs in the same execution path.
This grouping needs to be completed for comparing with the log parsing technique.

Grouping log files is no longer necessary for implementing the parsing technique.


Reorganise feature spec folder

I got tired of struggling to find the relevant feature specs. This PR reorganises the feature specs into their features:

Can contact_us_submit go in support, and basic_feature_spec get deleted?

@kjdchapman "support" in this context is the "support" folder for the features and includes all the helpers.
Basic feature spec can probably go I agree.


Documentation: add example

Add an example of a type declartion which will make flow complain when
a function is called with too many arguments.

Why not ...void[]?

Using a dedicated type NoMoreArgs is more strict than using void, it will also complain when calling function with undefined arguments.

It's important when one tries to implement knockout observable type interface, where ko.observable returns a function which accepts 0 (then acts as a getter) arguments or 1 argument (acting as a setter).
declare class NoMoreArgs {}

declare interface KnockoutObservable<T> {
  (...rest: NoMoreArgs[]): T;
  (arg: T): void;
};

Hi @coot, sorry for the delay in reviewing this.
I think I agree with @samwgoldman in this. Your NoMoreArgs[] example is a neat trick and definitely stricter than void[], since it's much harder to construct a NoMoreArgs value than it is to construct a void value.
However, it is a bit of a trick, and it does require you declaring NoMoreArgs somewhere. Furthermore, the void[] paradigm feels "good enough". Expressions with the type void are somewhat rare...usually just the expression undefined or a value that has been refined with === undefined. I'm having a hard time imagining someone accidentally calling a function with too many arguments that each have the type void.
However I think you are right that the documentation should show how to write a function that doesn't allow too many arguments. With your permission, I'd like to take this PR and update it to use void[] instead. Would that be ok with you?
And thanks for the contribution! We really do appreciate it!

Sure!


Corrected the acronym 'RAG'

The LLM generated name for RAG was wrong.

great catch!

those damn agents lol


[EROFS] Add support for xattr reservation of the base layer rootdir

What this PR does / why we need it:
Set the minimum inline xattr size for the root directory of the base layer, as there may not be enough room for xattr during the incremental build process.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Please check the following list:

[ ]  Does the affected code have corresponding tests, e.g. unit test, E2E test?
[ ]  Does this change require a documentation update?
[ ]  Does this introduce breaking changes that would require an announcement or bumping the major version?
[ ]  Do all new files have an appropriate license header?

@BigVan PTAL


Godot game engine example

I have put together a plugin for the Godot game engine that uses LLamaSharp to load a model and interact directly within the editor. I'd like to submit it as a documentation example, but it could probably use some polishing first.
Currently I'm having an issue figuring out how to automatically add the NuGet packages like the Unity example does (it looks like Unity has NuGetForUnity but there is no Godot equivalent). If anyone knows how I can do this so that the user doesn't have to open Visual Studio and manage the solution that would be great. Please let me know what other changes/improvements I should make before it could be listed in the README, thanks.

@eublefar @Xsanf Maybe you'll be interested in this issue. I hope this mention didn't disturb you. :)

I am not familiar with Godot, but maybe you could just download all NuGet dependencies and add them to the plugin manually?
You can just click Download package on nuget page, rename it to zip and extract the dlls from there.
I am not sure if it will cause assembly conflicts tho.

Thanks @eublefar, I was wondering the best way to extract those files (aside from going through an existing build). I've added them to the plugin folder and will try to manually reference them in the project. I'm wondering if PR #603 (SetDllImportResolver based loading) will help with this, as the end-user of the plugin may not always have an Nvidia gpu. It seems like either way the user will need a .csproj file, making this more suitable as a template but unable to be added to the Godot AssetLib as a typical plugin.

end-user of the plugin may not always have an Nvidia gpu
You can add CPU backend by default and add some comments where to get CUDA backend.

end-user of the plugin may not always have an Nvidia gpu

@adammikulis Maybe you could include both cpu and cuda native libraries and use LLama.Native.NativeLibraryConfig to select the backend dynamically at the beginning of the program. Note that installing both cpu and cuda backends is supported in master branch but not v0.10.0. If you want to use v0.10.0, please keep those files manually.

Thank you for the help! I've made some significant updates to my Godot add-on that bring it closer to being a useful example project. At this point I'm just trying to resolve the issue of properly referring to my backends in my .csproj.
I was able to successfully refer to a locally downloaded LLamaSharp.dll by adding a path reference to my .csproj (within an ItemGroup) but I am unable to get the Assemblies to recognize the Cuda backend I've manually added. Am I using the correct name for it? I also tried LLama and LLama.Native.
<Reference Include="llama">   <HintPath>addons\mind_game\libs\runtimes\win-x64\native\cuda12\llama.dll</HintPath>   <Private>True</Private>  </Reference>

I am calling NativeLibraryConfig.Instance.WithCuda(); as soon as the project scene loads, so I don't think that's the problem.

runtimes\win-x64\native\cuda12\llama.dll is the correct path, but I'm not sure whether its prefix is correct. Since you've already had an specific path of native library, you can also use NativeLibraryConfig.Instance.WithLibrary.

For some reason I cannot get Godot to use my GPU if the CPU backend is installed, so I'll omit that backend for now and am following #670. As I am distributing this as an add-on, many people who use it will be well-versed with Godot but possibly not so much with NuGet. The ability to dynamically download the correct backend will go a long way towards Mind Game's usability both as a technical tool and as part of a finished game.
Godot 4.3dev6 is .NET8-compatible, but they're still working on getting mobile exports to work. Web export will take additional time, but I should be able to get LLamaSharp working on basically every device via this addon.

@adammikulis Hi, are you using .NET standard2.0?

should I use a lower version?

Nope, .NET 8 is better. I don't know much about Godot so I thought it's the same as unity, which only supports .NET standard2.0. :) Currently all the releases of LLamaSharp only supports dynamic native library loading with .NET6 or higher. The support for .NET standard2.0 will be added in #738.

I'll merge #688 in 2 days (with some documentation added), and then move on in #692.
I'd like to hear from you about the security concern of the backend-downloading feature. As mentioned in this comment, in some cases using this feature can lead to a security problem. After having #688 merged, it's possible to put the DLLs in your own remote resource and define the downloading process yourself. However I'm not sure whether this reduces the risk to the point where it can be used for game release.

Unity is known for its C# support, but ever since their runtime fee debacle there has been a lot of development with Godot to support C#/.NET better. Mobile export support should be available in the next few months, but HTML5 doesn't have a timeline.
I can't really argue with the security concern mentioned, despite the convenience that the auto-download would be. I think with LLamaSharp geared towards enterprise environments (or at least moreso than Python libraries), @dluc's point about the possible backdoor makes me wonder about the pushback such a feature could receive.
For my project, either I'm doing something wrong when trying to use NativeLibraryConfig.Instance.WithCuda(true); or there is some sort of backend loading that happens in Godot before the config is run (I have it as the first line executed in the first script that is autoloaded when the engine starts, and I'm not using any LLamaSharp methods/vars before calling that line). Let me know if you're able to test the current release (v0.2), or even the current dev branch if you're interested in playing around with Godot.

I think it's a LLamaSharp issue rather than your fault. For example, if the godot output folder has a different directory structure with common .NET apps, it may lead to such an error.
Would you like to give an out-of-the -box example to reproduce this error? Since I know nothing about godot, it will save me a lot of time if I have such an example, without the need to configure the project on my own. I'll install godot tonight to take a look into it.

This is from my most recent commit, you open it by starting Godot and using the Import menu feature to find the folder and the project.godot file. MindGame-0.3-dev.zip
If you click the play icon in the upper right of the engine, it should start you with a 3D chat scene. There you can configure and load your model, as well as access the menu for inference configuration. The UI isn't very good and I need to separate model/inference config from the loading, but it should work for testing.
I'm not sure what OS you're using but Godot 4.3 dev6 Mono will work with it. If you want to try exporting this project as a game, you can download the export templates within the engine (but this isn't needed for just running the project).
It's just a menu click away from configuring Godot to work with Visual Studio, here is a quick overview of the basics of C# with Godot.

To select an external editor in Godot, click on Editor → Editor Settings and scroll down to Dotnet. Under Dotnet, click on Editor, and select your external editor of choice.

Let me know if you have any trouble running the project or with Godot in general. The main script is MindManager.cs, which is autoloaded by the engine. Through that, it gets added as a node to every scene, allowing all scripts to access the model for inference (via MindAgents).

I downloaded the zip file but got an error below. I'm using Godot 4.2, does that matter?

It's very likely that there has been a change in the AnimationPlayer between 4.2 and 4.3 (all of my development on Mind Game has been with 4.3 dev versions, because 4.2 does not support mobile C# export). Do you get the same error with Godot 4.3 dev6 Mono?

Yeah it's a Godot version problem. I've known why this behavior happens now and will try to fix it.

Sorry my previous reply was wrong. Actually I cannot reproduce this error. The game runs and uses GPU during the inference.
Could you please take the following steps to check?

Run nvidia-smi in your powershell.
Run nvcc -V in your powershell.
Run dumpbin /dependents llama.dll in the "Developer Command Prompt for Visual Studio", in which llama.dll should be a cuda-compiled one.

I think the reason is likely to be that llama.dll cannot find a cuda/cublas library as its dependency. If you do not have cuda installed, you can try to download cudart files to the same folder with llama.dll.

p.s. When you're using the auto-download feature, did this problem go away?

I'm glad that it uses the GPU even when both backends are installed! The UI needs some work but it shouldn't be too hard to fix that. Thanks for downloading Godot and trying this project out :)
I'm wondering if my Cuda version is too new?

nvidia-smi

nvcc -V

I ran dumpbin /dependents llama.dll in my project repo but I haven't actually been using a direct reference to llama.dll (switched back to Nuget packages) so maybe that's why I get this error:

I haven't tried the auto-download yet since I figured that the issue may be on my end. I'm going to downgrade to Cuda 12.2 and see if that resolves the issue of GPU usage with both backends installed.

Would your project use use GPU if you use the cuda11 backend? The cuda version displayed in your nvidia-smi is 12.4, but it's 11.6 in nvcc -V. Generally the output of nvcc is accurate.

I'm a little surprised that my versions were different between the two commands (I would have assumed that when I installed Cuda 12.4 it would have updated build tools from 11.6). Upon installing Cuda 12.2 they are now both reporting as such and the program functions normally with both backends (CPU and Cuda12) installed. This was my mistake somehow when I installed Cuda 12.x and didn't entirely overwrite an old install of 11.6. Not a LLamaSharp or Mind Game bug, just some past user error :)
Since it appears to be functioning correctly, what changes do I need to make before it could be a proper example? I think I need to add more comments/documentation, separate config UI from loading UI, and finalize the config autoloading that I've programmed in.

If you installed cuda 12.4 after having cuda 11.6 installed, you need to change the PATH environment variables (and any other variables related with cuda).

Since it appears to be functioning correctly, what changes do I need to make before it could be a proper example?

Maybe the state saving&loading since they are common in games? :)


Add a Redis adapter

After #6 is merged, it should be pretty easy to just plug in a Redis adapter, which is largely true.
However, one problem that I encountered while trying to implement it in #7 is that it's not possible to marshal/unmarshal Procs.
Since currently that's the implementation of the in-memory Registry currently (keep a reference to Proc so we can execute later when notifying consumers), we might need to rethink the strategy of how to notify customers, or just deviate slightly for a redis adapter (if so, different how?)
This might require a bit more discussion on how to proceed, so welcome any discussion here!

Perhaps a bit of a mistake on my part, looks like there's no real need to store the entire Registry into Redis, what really matters is the jobs in Rocketman::Pool.
When the app dies, we should persist the queue to Redis, and when the app starts, we should rehydrate the job queue from Redis

This is resolved in #12


library conflict

I use this version of ads
compile "com.google.android.gms:play-services-ads:8.1.0"
it is conflict with your plugin
com.google.android.gms:play-services-analytics-impl-license:11.6.0
I want to change to version of play-services-analytics-impl-license to 8.1.0 but I don't know where to change it in your plugin.
I tried add this line in my build.gradle but no help, still version 11.6.0
compile "com.google.android.gms:play-services-analytics-impl-license:8.1.0"

The solution is for the author of this plugin to use the new mechanism available in Cordova 7.1.0 (android-6.3.0) which now allows plugin developers to expose <variable />s in the config.xml, allowing plugin developers to do this:
<platform name="android">
  <preference name="GOOGLE_API_VERSION" default="11.0.1" />
  <framework src="com.google.gms:google-services:$GOOGLE_API_VERSION" />
  <framework src="com.google.android.gms:play-services-tagmanager:$GOOGLE_API_VERSION" />
  <framework src="com.google.firebase:firebase-core:$GOOGLE_API_VERSION" />
  <framework src="com.google.firebase:firebase-messaging:$GOOGLE_API_VERSION" />
  <framework src="com.google.firebase:firebase-crash:$GOOGLE_API_VERSION" />
  <framework src="com.google.firebase:firebase-config:$GOOGLE_API_VERSION" />
  .
  .
  .
</platform>

Then in your application's config.xml, you will have a <variable name="GOOGLE_API_VERSION /> exposed developers to configure.
<plugin name="cordova-plugin-firebase">
  <variable name="GOOGLE_API_VERSION" value="11.0.1" />
</plugin>

This is a very easy change to implement.  See this commit as phonegap-plugin-push, who were the first to implement this mechanism (they actually instigated it with Cordova).
Note: This mechanism requires cordova @7.1.0.

I will take a PR if anyone feels like implementing this

this appears to be fixed by installing cordova-android-play-services-gradle-release

I have a problem like this link.
The solution was to add these lines:
allprojects {     repositories {          //start here         configurations.all {             resolutionStrategy.eachDependency { DependencyResolveDetails details ->                 def requested = details.requested                 if (requested.group == 'com.google.android.gms') {                     details.useVersion '11.8.0'                 }                 if (requested.group == 'com.google.firebase') {                     details.useVersion '11.8.0'                 }             }         }         //end
to the file build.gradle.
how could add this setting by config.xml ?
can anybody help me?


version number updated in templates/layout.html

the version of puppetboard was updated to 0.1.1 but the version number in this layout file was still 0.1.0.

I was hasty in release 0.1.1 the other day in order to release the reports fix.
I will merge this when I get a chance but will not release another package containing only this fix.


Can't Plant Seed ond Rich Soil Farmland

Hello @ardissaps, thanks to report the issue, but I can't reproduce it on latest version of 1.19 (0.3.0) and 1.18 (0.2.1) Minecraft version of the mod.
Can you tell me what is the version of Farmer's Delight you installed ?

Version I am using :

I've tested it in fresh install with only Farmer's Delight, and it worked well.
Can you give me the complete list of mod that you are using and test only with Famer's Delight installed.

My mod list is very huge, I'll try to install FD alone on separate intance when I have chance.

My guess, is there is a mod that override the method canPlantOnTop of CropBlock class with a mixin.
Do you know if there is a mod (in your list) that had new farmland blocks style ?

My guess, is there is a mod that override the method canPlantOnTop of CropBlock class with a mixin.
Do you know if there is a mod (in your list) that had new farmland blocks style ?

Yes it is, BYG  have lush farmland.

Look like they have their own tag that only have their farmland and vanilla one :

It seems that isn't a bad interaction with BYG, so it should be an another mod, but I've no idea which one.

It seems that isn't a bad interaction with BYG, so it should be an another mod, but I've no idea which one.
In fact I could do the same as BYG fabric version do to integrate a new farmland, but in my opinion, it is not a good way.

I found it, the problem is caused by MoreTags, the problem look like from their end. I already removed it and it works now. While for custom tag now I use KubeJS instead.


Pow function add

Do the checklist before submitting the PR:

[x] Have you read the guidelines mentioned in CONTRIBUTING.md?
[ ] Have you squashed your commits?

Q: What version of Node.js you've used in the project? (e.g. Node v10.11.0)
A:v11.6.0
Q: Mention the Issue Number! (e.g. Fixed #8)
A:

Give additional information regarding the PR below:

Codecov Report

Merging #65 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #65   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          43     44    +1
  Lines         442    457   +15
=====================================
+ Hits          442    457   +15

Impacted Files
Coverage Δ

src/pow/index.js
100% <100%> (ø)

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 7bb25dd...bf5f539. Read the comment docs.

Do you want me to change all the errors that Codacy detected and make a PR again?


Low Focus in preview

Camera preview and captured Image quality is very low

I have override this dependency and now its working fine


Add offline apt package cache in kube runtime

To resolve: https://github.com/microsoft/pai/issues/4211
Docs: https://github.com/microsoft/pai/blob/zhiyuhe/package_cache/src/kube-runtime/package_cache.md

Test cases:

submit a job using ubuntu:16.04; enable ssh and a storage for it; make sure SSH and storage is usable; make sure there is no apt-get command in generated logs

submit a job using ubuntu:15.10; enable ssh and a storage for it; make sure SSH and storage is usable; In this case, package cache should fall back to apt-get

Test cases:

submit a job using ubuntu:16.04; enable ssh and a storage for it; make sure SSH and storage is usable; make sure there is no apt-get command in generated logs
submit a job using ubuntu:15.10; enable ssh and a storage for it; make sure SSH and storage is usable; In this case, package cache should fall back to apt-get

Test finished


[docs] Add note about async/await syntax in the examples, Python 3.5+ v. 3.4

Issue https://github.com/KeepSafe/aiohttp/issues/683

thanks


Create a custom icon for the Github logo

Issue Type

Feature request

Current Behavior

The Github logo is currently an image file.
Expected Behavior

The icon should be an icon file, the same as Facebook and Twitter.
Possible Solution

Create a custom icon for the Github logo.
Context

This makes all of the icons so they are not image files and will behave correctly.

I saw that you can make custom iconsets and thought this may include adding custom icons. This doesn't appear possible and we will have to continue using the image file for the Github icon.

What about using stackicons for the GiotHub icon (and possible other missing social icons)?

I forgot about this one for a minute, but fontawesome is REALLY awesome!
The instructions are clear and the Github icon is here.

Oh yeah, of course! I'll switch all 3 over so they behave the same.


🌱 Bump the Kubernetes group to v0.32.0-beta.0

What this PR does / why we need it:

Bump the Kubernetes group to v0.32.0-beta.0
Bump go to 1.23.0 in go.mod and Dockerfile

Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Release note:

/ok-to-test

/ok-to-test


Forwarding class for Renderer to support custom Metadata and Text Renderer

I'm going to send this for internal review now. You may see some more commits being added as I make changes in response to review feedback. Please refrain from pushing any more substantive changes as it will complicate the internal review - thanks!


Treat passed user input as plaintext

Message::plaintextParams(): Like rawParams(), but does escaping. It is useful when you pass user input that may contain wikitext that should not be parsed.Manual:Messages API

Related to https://github.com/kulttuuri/DiscordNotifications/issues/73

All good in this @lens0021 ? :)


You can only have one top-level

Describe the bug
I personally use LESS, but the Svelte Material UI (SMUI) library I'm utilizing uses SASS as a CSS preprocessor. When trying to use multiple <style> tags with different languages (lang="less" and lang="sass"), it won't compile because svelte/(sapper in my case) doesn't accept multiple top-level style tags.
Logs
You can only have one top-level <style> tag per component (from rollup->client and ->server)
To Reproduce
Default sapper project template with multiple preprocessor

By the way I love this plugin, keep up the good work! 💖
I know maintaining stuff like this can be difficult, so thank you for taking your time investigating on this issue!

Hey @GitGangGuy! Unfortunately, that's a Svelte limitation. I could mimic the exact process it does to capture the tags and their contents, but not only this would be happening twice, I'd need to literally replicate the preprocess step from the compiler's side.


Use G-Research/gresearch registry values as appropriate

Revert to the original apache registry for yunikorn-release repo reference (G-Research does not have a fork for that repo, and the end-to-end tests in this one pull Helm charts from there, G-R may not need its own modifications of that repo, so use the Apache one for now), and use G-Research/gresearch for all others. Also, disable colorized output on ginkgo tests, so CI output in Github Actions is readable.
Fixes https://github.com/G-Research/unicorn-history-server/issues/346

Great work! nice to see them all pass. I see a few lines are ignored in linting. Are we using a different linter than Yunikorn?

It's still golangci-lint, but just a newer version. They were using v1.57.2, which was hanging on both the GH CI checks and also on my Ubuntu box. I have read of reports of people having issues with older versions of golangic-lint never finishing when it's compiled with Go 1.23. I upgraded it to v1.62.0 (see Makefile), and that found a number of new things to complain about, which is why I added the //nolint:xxxx comments to most of those places (a few lines,, it just needed to change some redundant fmt.Errorf(fmt.Sprintf(....)) calls.


Suggestions for the annotation step

[ ] Glitch: changing the question number currently resets the number
of points
[ ] Glitch: decreasing (changing?) the number of points resets the
step
[ ] Auto-detect frames / snap to frame
[x] When choosing a tool in the palette, and in particular the erase tool, change
the mouse pointer to that tool?
[ ] Clicking on a question on the left bar displays the sheet at the
location of the question, and opens the question properties on the
right panel
[x] Add a tool to type text
[x] #359
properties on the right panel (?)

Hi! I just added to the list a feature request for a "type text" tool. This is handy for quickly
entering small comments that are specific to a given student answer, and that are best
located at a specific location on the student sheet. Faster than hand writing too.

@nthiery done for Add a tool to type text

I used it this afternoon; it worked smoothly! Thanks a lot.
A little improvement would be to have the focus in the text zone after clicking
to create it, to be able to start typing right away.

A little improvement would be to have the focus in the text zone after clicking
Yes, of course. Sorry I commit to quickly. I will manage that

A little improvement would be to have the focus in the text zone after clicking
Yes, of course. Sorry I commit to quickly. I will manage that

done

Works smoothly! Thanks :-)

For information: I added a new item on this issue description:

[ ] Display the exercise title next to the question number

About: the item "Clicking on a question on the left bar displays the sheet at the location of the question, and opens the question properties on the right panel": the first part works smoothly. However the opening of the question properties on the right panel does not seem to happen (Florent's machine, Ubuntu, firefox).

I fix that, it is currently build the new version. Will be available when https://github.com/correctexam/corrigeExamFront/actions finished the process


optimize the latest_version_id lookup

avoid a costly order on possibly large tables to then select a subset of filtered rows.
Instead take the max id from the optimal version_ids to find the latest known version association via the auto-incrementing PK.
Review checklist

[ ] First, the most important one: is this PR small enough that you can actually review it? Feel free to just reject a branch if the changes are hard to review due to the length of the diff.
[ ] If there are any migrations, will they the previous version of the app work correctly after they've been run (e.g. the don't remove columns still known about by ActiveRecord).
[ ] If anything changed with regards to the public API, are those changes also documented in the apiary.apib file?
[ ] Are all the changes covered by tests? Think about any possible edge cases that might be left untested.

lgtm. Was this just an optimization that caught your eye while working on something else, or was there a slowdown you noticed that this solved?

I was trying to sync some translation resources and noticed some workers took upwards of 7 minutes for workflow syncs, i explained the query to get a look at it and realised the order was an issue on tables with lots of versions. I didn't magically see this in code...it took me a little while to see it actually :)


Feature/extenal dependencies

Migrates the library to v2 format
Factors out external dependencies

I'll review, test and merge.

Reviewed and tested. I want to flesh out the README before releasing.


WIP: program added/removed events

This allows registering callbacks for 2 different scenarios:

added/removed callback for programs directly on the controller
removed callback fired directly on the program

Example usage:
import time
from pyopensprinkler import Controller as OpenSprinklerController

def premoved(program):
    print("program object callback")
    print(program.index)

def pobserver(controller, action, index):
    print(f"station {index} {action}")
    if action == "added":
        print(controller.programs[index])
        controller.programs[index].add_on_removed_observer(premoved)

controller = OpenSprinklerController(...)
controller.add_program_observer(pobserver)

controller.refresh()
# go change program name
# add or remove programs
# etc
time.sleep(10)

# should trigger callbacks
controller.refresh()

exit(0)

The callback directly on the program will make it easier to bind an entity to the removal process and deregister the entity with hass in a more self-contained manner.

For the sake of completeness should we have a de-register callback too?
Should there be a different event for "rename"?
Can you open a proof on concept on the HA side too?

The controller callback serves both added and removed. For simplicity I think it would be difficult try to manage a rename/modify event and would probably stick with a modify is a remove and subsequent add.


Expand shell wildcards in --paths for all platforms

Fixes #438
If the --paths value is not provided through the shell, then shell wildcards won't be expanded. This is the case when using a defaults.yaml file.
To cover this case, expand wildcards on all platforms, not just Windows. I renamed and made expand_wildcards part of the public API so that it can be used elsewhere as well.
I can't think of any downsides to doing this, and being able to use wildcards in a defaults.yaml file does seem like a very normal use case.
Signed-off-by: Christophe Bedard<EMAIL_ADDRESS>

I think it's also important to point out that it doesn't support double asterisks (**). Without recursive=True for glob, it is pretty much treated as a simple *: https://docs.python.org/3/library/glob.html#glob.glob
Maybe we should support that? The call to glob does take more time with recursive=True of course, but if people using ** they should be expecting that anyway.

I renamed and made expand_wildcards part of the public API so that it can be used elsewhere, e.g. by colcon-recursive-crawl for --base-paths https://github.com/colcon/colcon-recursive-crawl/pull/22

@cottsay @sloretz @nuclearsandwich friendly ping. Could this get a review?

a given pattern which has no matches is silently skipped by this implementation, where a typical shell would simply forward it as-is.

If a pattern yields no matches, then there isn't really anything else that can be done with it, is there? I don't think the subsequent code/logic can do anything more with it.

If a pattern yields no matches, then there isn't really anything else that can be done with it, is there? I don't think the subsequent code/logic can do anything more with it.

My comment was maybe a little premature - I hadn't actually tried this out and only inferred the behavior from the code. The existing implementation also seems to ignore non-existing paths without wildcards, which I hadn't expected. I'd guess this changes my interpretation of what purpose --paths aims for. It appears to be a list of possible search patterns rather than a literal list of paths to be searched.
Sorry about that - I should have done the due diligence of understanding the full behavior of the argument before critiquing it so.
Since this wasn't very clear in the code, and I don't expect it to be nearly as widely used across colcon as I previously believed, I think moving forward as-is would be fine. One request though - could you rename the (now public) function and/or add a comment explaining the nuances of this behavior? I would expect a function called expand_wildcards to match files and directories equally.

@cottsay that's fair. I renamed it to expand_dir_wildcards and documented its behaviour in a1ebd5fe686012755f7e03d9b32879d6cc76e2b4

I also rebased on master to get the CI changes.

@cottsay thanks for the review! Does it need a second review, or can it be merged? Then https://github.com/colcon/colcon-recursive-crawl/pull/22 should be a trivial change after this PR, but colcon-core will need to be bumped and released (e.g., 0.6.2) for colcon-recursive-call to use this new public function.


Rs 2022 04 03.1

Note that I've edited previous instances of 半人前 - we had this as 'half-vampire' but I don't think that's really correct, both because

It implies she's half something else and
I think it's more supposed to be 'incomplete', 'unfinished', someone that has not consummated their vampireness


Possible to update LuaLanes or add patch in support of sqm-autorate?

Hello,
Thanks for your work in supporting the NanoPi's! I've came across sqm-autorate which I'd like to use, but it seems there's an issue with pthreads and LuaLanes in the current package available to OpenWRT.
There's a patch listed that I'm wondering if can be evaluated for inclusion in the AO builds to let us have a functioning autorate? Or perhaps an update of LuaLanes as described here?
Be great for those of us with variable pools (read: Cable) connections!
Thanks for considering!

Sorry but after checking it's not in my plans to add this package or patch to my builds.
Probably try https://github.com/lynxthecat/cake-autorate instead that seems to achieve same goal without lua.
Else I can suggest you to rebuild the failing package with a OpenWrt SDK

@lwndow I am hoping to have this rectified soon per https://github.com/openwrt/packages/pull/23121.


revert requests fix

[X] Tests added / passed
[X] Passes flake8 dask

this undoes the requests fix from https://github.com/dask/dask/pull/3594 since they released a patched version

Toggling to restart CI.

FYI - the bug regards PYTHONOPTIMIZE=2 not working requests 2.9.0 as noted in PR ( https://github.com/dask/dask/pull/3594 ). This was caused by a bug introduced in PR ( https://github.com/requests/requests/pull/4394 ), which was later fixed in PR ( https://github.com/requests/requests/pull/4683 ). The latter is included in requests 2.9.1, which is now out.

Agreed. Thanks for checking. :)


Vanilla repo clone, failing test in nip04.test.js

Hello 👋🏻 checking out these tools, looks great!
Problem
After a vanilla repo clone and yarn, 17/18 tests pass, one test fails.
Steps to reproduce

git clone the repo into clean userspace.
Run yarn to bring everything in.
run npm test and observe (see screen capture below)

Is this is because Crypto.subtle isn't available in insecure contexts? I'm unsure if this test is supposed to work in a terminal sesh or... 🤔?

It should be supported in Node.js for the tests to run. What is your Node.js version?

@fiatjaf 17/18 tests pass on Node v16.14.0 and v16.12.0 — two different boxes.
Upgrading node with...
nvm install stable --reinstall-packages-from=current

... brings me to v19.3.0 and all tests pass now.
Trying it with Node v18.12.1 which is lts/hydrogen I see 17/18 tests passing.
So Node v19 appears to be a requirement.

@fiatjaf PR #62 adds this to the readme.

I had to force a global for crypto to point to webcrypto in my module to get this to work:
global.crypto = require('crypto').webcrypto;

Lyle @lylepratt I believe the actual issue here is @fiatjaf appears enamoured with claiming light dependency — or "Only depends on..." as it inaccurately says now — as opposed to properly documenting this.
Or to restate this cleanly: adding Node v19 as was suggested in closed PR #62 is evidently a bridge too far for some unstated reason.
A fluff claim, however inaccurate, matters more than bum-steering users. That's my take, and why I'm presently using, and contributing to, something else.


Support both encrypt.keyStore and encrypt.key-store configuration properties

Use prefix parameter when when matching encrypt.keyStore property so that relaxed naming will also encrypt.key-store

Codecov Report

Merging #772 into 1.3.x will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##            1.3.x     #772   +/-   ##
=======================================
  Coverage   75.76%   75.76%
=======================================
  Files          81       81
  Lines        2653     2653
  Branches      379      379
=======================================
  Hits         2010     2010
  Misses        483      483
  Partials      160      160

Impacted Files
Coverage Δ

...fig/server/config/EncryptionAutoConfiguration.java
100% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


[REQUEST] Synchronization of saves via backend (self-hosted)

Add a backend for your app. Thanks to it you could do synchronization of saves between different devices.
And after that in the settings you specify the address to the server
And Self-Hosted, please.

Maybe this could be implemented in a similar as Ludusavi on playnite

That would be nice :D


Feature: Astro Expressive Code should handle Astro's  component

Not sure if in the right repo for my request – but here we go 😄
I have astro-expressive-code installed on my Astro site. I'm also making use of astro's built-in  component for some code that I'm reading during build time. Something along the lines of:
---
import { Code } from "astro/components";
import { readJsSourceFile } from "../js/backend.js";
const sourceCode = readJsSourceFile();
---

I noticed that astro-expressive-code doesn't pick up the component. Makes kind of sense, since that component doesn't (yet?) support the features provided by expressive-code (title, marking, ...)
Is there an integration planned for this?

...The reason I'm kind of forced to use the component is because I haven't found a way to expand the variable inside a fenced code block. This:
```js
{sourceCode}
```

will simply print
{sourceCode}`

...instead of the actual source code

Ha, yet another totally valid use case I didn't think of yet! I really love all the input! 😄
I just checked the source code of the Astro Code component and it doesn't seem to provide a way of hooking into it. However, I could imagine exporting our very own Code component from the astro-expressive-code package as a drop-in replacement. You would then only need to change the import statement and keep using  as is in your documents.
The only thing I'm not sure of is if we could access the Astro config in some way from that component so that the Code component could automatically use the site-wide settings you've provided in the config.

So nice that you are so open for new ideas! ❤
I'm afraid that keeping a drop-in  component in sync with astro's implementation could become quite a chore down the road.
In my opinion, the ideal solution would be to gain first-party support for expressive-code features in the built-in Astro component. Being able to do something like this would be amazing:

Alternatively, an official second component would maybe be an even better approach:
<ExpressiveCode code={JS} lang="js" title="script.js" mark={["substring1", "substring2"]} group:start />

Do you think we could reach out to the Astro team for that? To be honest, I actually thought this project was tightly coupled with Astro already, since I found out about it through their docs 😅

So nice that you are so open for new ideas! ❤

Thank you for the kind words! I really appreciate all the great input.

I'm afraid that keeping a drop-in  component in sync with astro's implementation could become quite a chore down the road.

Hmm, I'm not sure if I understand why this could be difficult. My idea here was: As long as the Expressive Code version of this component has the same props as Astro's component, migrating any of your pages to the Expressive Code version should be as easy as editing the frontmatter section of your MDX document and replacing the line import { Code } from 'astro/components'; with import { Code } from 'astro-expressive-code';.
The idea to export an alternate  component (which could also be called differently of course) from astro-expressive-code came from looking at the existing <Prism> component which is also provided by an integration. I was hoping that if this works for Prism, it should work for Expressive Code, too. At least I'd be willing to give it a good try!

Do you think we could reach out to the Astro team for that? To be honest, I actually thought this project was tightly coupled with Astro already, since I found out about it through their docs 😅

I'm actually an Astro maintainer and Expressive Code is a refactored version of my code that I added to Astro Docs a long time ago to improve the code examples in the official documentation. 😄 We're now using Expressive Code in Astro Docs.
I have already asked my team at Astro about how I could implement a Code component that has access to the central Expressive Code configuration in your site settings (which is quite a challenge due to the way the Astro config is loaded and abstracted away from the actual pages, especially in SSR mode). There seems to be a solution which would require creating a separate config file like expressive-code.config.mjs and making it available to components through Vite's virtual modules feature. I can't promise how quickly I would able to try this, though!

Oh, and regarding having Expressive Code support in the built-in Astro component: I don't think that this would be a preferred option for the Astro team as they always focus on keeping their core package small and performant (and rightfully so in my opinion). They would most likely prefer to keep such functionality in a separate package.

Hmm, I'm not sure if I understand why this could be difficult.

That was a misunderstanding – I didn't mean difficult for me, I meant difficult for you as the maintainer 😄
I'd love to see the feature, for me as an end user it would of course make no difference if I would import the component from expressive-code instead.
Also, thanks so much for the detailed information! Very interesting to learn more about the deeper considerations in Astro's core team.
Actually, I have a question unrelated to this issue – could we get in contact directly? My mail<EMAIL_ADDRESS>

Actually that wasn't a misunderstanding! I'm not seeing much of a difficulty to maintain this right now. The Code component's public API seems to be fairly stable judging from its commit history. Famous last words maybe! 😆
So, I'll leave this very valid feature idea open to put it on the backlog! If anyone wants to give it a shot, feel free to let us know here! Otherwise I'll implement it once I have finished some other work, namely a new inline comment parser and the grouped tabs we discussed in another thread.
Sent you an email!

I started working on this, but quickly hit a speed bump. When I run build, I'm getting this error message:

No loader is configured for ".astro" files: src/components/Code.astro

Which I guess originates from me attempting to re-export the .astro file from index.ts:
export { default as Code } from './components/Code.astro'

Can you point me in the right direction here? 🙏

I started working on this and already hit a speed bump 😄
When I run build, I'm getting this error message:

No loader is configured for ".astro" files: src/components/Code.astro

Can you point me in the right direction here? 🙏

First of all, thank you for jumping into this! I had a look at the code and I totally understand why you got stuck. The issue seems to be that it's actually hard to properly set up a package that both has a TS-based integration that needs to go through a transpiler (which is done by the build step that I set up in this package), but also exports some components that must not be transpiled but exported as-is (like .astro components).
I have asked the Astro team if they can provide guidance on how to do this the right way, and I hope that they can set up a small example or template for this. The other helpful templates they have are focused on component-only packages, and the tricky combination with a TypeScript integration isn't covered yet. The team told me that we're in very good company and that many developers ran into this exact problem during a recent hackathon, so they are aware of this and will provide official help.
I'd therefore probably advise to put this on hold until we have a good minimal example on how to do it properly. If you don't want to wait, I was pointed at the @astrojs/image integration, which apparently features this combination, but there's a lot of stuff going on in there, so it would probably take some time to dig through and extract the changes we'd need to make to get this to work.

Thanks @hippotastic for your help with this! No rush from my end 🏝😊 My current main project is eating enough time already anyways 😁

A big +1 for this, especially for the ability to inclure variables 💯

A big +1 for this. I have been working on webtrotion, which doesn't use markdown but rather renders notion's json directly into astro components. Having a ECode component there would be so awesome to allow for comment highlights or folding.

Thank you for your input to this! I also needed a similar component myself for EC's documentation website, where I had to come up with a quick way to render all available themes without their CSS being present on all other pages as well.
If you know your config, it's not hard to create such a component manually and use it in your project:
https://github.com/expressive-code/expressive-code/blob/main/docs/src/components/ThemePreview.astro
The tricky part in generalizing this for all Astro EC users is the "know your config" part as during rendering, we don't have access to Astro's config file and functions / instances created there. So I'll need to create the possibility to place an EC config file somewhere in your project which can then be detected and used automatically both from the initialization function in the Astro config file and an EC Code component.
This feature request is probably the one I'll work on next.

Thank you for pointing me to this! I would know my config, so I do not think that would be a problem. I was wondering if you have suggestions about best practices -- specifically, should the new ExpressiveCode be called only once through a whole build process? I know that Astro mentions to use their cached shiki highlighter. Is there something similar for expressive code too?

I also recommend reusing a single instance of the engine throughout the build process:
https://expressive-code.com/reference/core-api/#constructors
But that being said, I'd still advise you to try it without any optimizations first and only start doing more when you actually notice any performance issues.

I just released version 0.32.0 of Expressive Code to NPM, which adds a  component to astro-expressive-code: https://expressive-code.com/key-features/code-component/
I'll now create a PR to add support for this new component to Starlight as well. Some minor modifications to the Starlight EC integration are required to make it work, but it shouldn't take long. :)

🤩 That's amazing news! Also, congrats to the (new?) docs site!

This is awesome! I will look into this over the course of the month. Thank you ❤


follow redirects in fetch_content

Hi, thank you for your module, this PR allows redirects; here a test of that (fails with main):
from oembedpy.application import Oembed
oembed=Oembed()
oembed.fetch('https://www.mixcloud.com/anthonymarkwell/day-0-orientation-talk/')

Thank you and sorry later response. This is good suggestion, and I passed tests in local.
I will merged it!

Released v0.5.0. thx!!


Unable upload via volaupload.sh files greater than a few hundred megabytes

For some time now, regardless of the server one is uploading to, 7 - 10, when trying to upload with volaupload.sh, latest or the older variations, from sizes of a few hundred megabytes up to the maximum of 20 gigabytes, volaupload.sh is randomly halting upload to curl error 22 or 52:
`$ bash volaupload.sh -r 1bmweqm3c 600
</> Uploading 600 to 1bmweqm3c, dl9 as Volaphile
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
50  600M    0     0   50  303M      0  5146k  0:01:59  0:01:00  0:00:59 7184k
curl: (22) The requested URL returned error: 502 Service Unavailable
</> Uploading 600 to 1bmweqm3c, dl7 as Volaphile
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
58  600M    0     0   58  350M      0  5954k  0:01:43  0:01:00  0:00:43 6108k
curl: (52) Empty reply from server
</> Uploading 600 to 1bmweqm3c, dl9 as Volaphile
% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
Dload  Upload   Total   Spent    Left  Speed
41  600M    0     0   41  251M      0  4279k  0:02:23  0:01:00  0:01:23 4214k
curl: (52) Empty reply from server
`

Thanks for the report, this is the issue on the server side, basically server cancels any uploads which take longer than one minute to finish and my script doesn't have resume logic to continue the upload. In the mean time while I'm trying to find solution for these scripts heres working uploader written in javascript that has resume logic implemented.

@dimetime I've added upload resume support in this commit, also please have this note in mind https://github.com/szero/volascripts.sh/commit/690f324666b888b95525c6334deb3e857455a927#r40486258 while trying to upload large files.

Hey again, @dimetime. I've updated the script after finding out why it was not working for you. I have been testing it only with my curl wrapper script curlbar and didn't test it with plain curl and it wasn't returning proper error codes. Now it should be good to go for you.