text:
怎么改了不更新，这里面还是一直跳这个提示

[2022-12-30 18:02:07,813 b站动态监视器] ERROR: <class 'ValueError'> occured when doing scheduled job bili_watch.
[2022-12-30 18:02:07,813 b站动态监视器] ERROR: invalid literal for int() with base 10: '0     # 0=不更新，1=从gitee检查更新(国内推荐)，2=从github检查更新'
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\noellebot\noelle-bot-setup\hoshino\service.py", line 345, in wrapper
ret = await func()
File "C:\Users\Administrator\Desktop\noellebot\noelle-bot-setup\hoshino\modules\bili-notice-hoshino\bili_notice_hoshino.py", line 53, in bili_watch
rst, dylist = await dymgr.get_update()
File "C:\Users\Administrator\Desktop\noellebot\noelle-bot-setup\hoshino\modules\bili-notice-hoshino\dymgr.py", line 155, in get_update
await check_plugin_update()
File "C:\Users\Administrator\Desktop\noellebot\noelle-bot-setup\hoshino\modules\bili-notice-hoshino\dymgr.py", line 732, in check_plugin_update
way = conf.getint('common','if_check_update')
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\configparser.py", line 818, in getint
return self._get_conv(section, option, int, raw=raw, vars=vars,
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\configparser.py", line 808, in _get_conv
return self._get(section, conv, option, raw=raw, vars=vars,
File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\configparser.py", line 803, in _get
return conv(self.get(section, option, **kwargs))
ValueError: invalid literal for int() with base 10: '0     # 0=不更新，1=从gitee检查更新(国内推荐)，2=从github检查更新'

抱歉前几天都没打开邮箱和github，没有看到你的问题。
看起来可能是配置文件注释的问题，尝试把#号以及后面的注释删除或者移动到新行。之前已经移除了这个隐患，您也可以更新到最新版，并且重新配置一下config.ini文件
如果方便的话，可以把config.ini文件的if_check_update =    字段贴出来，看一下是否有其他的可能原因。

好的，我后面有机会再试试吧，我服务器到期了，后面换一个服务器才能再试了。

我重新下载了整个插件覆盖进去
打开之后就是这样的

这个是运行窗口的显示
[2023-01-05 15:27:00,059 b站动态监视器] INFO: Scheduled job bili_watch start. 2023-01-05 15:27:00.060 | INFO     | hoshino.modules.bili-notice-hoshino.dymgr:clean_cache:696 - Clean image cache finish! 2023-01-05 15:27:00.063 | INFO     | hoshino.modules.bili-notice-hoshino.dymgr:clean_cache:721 - Clean uppers history finish! [2023-01-05 15:27:00,065 b站动态监视器] ERROR: <class 'ValueError'> occured when doing scheduled job bili_watch. [2023-01-05 15:27:00,065 b站动态监视器] ERROR: invalid literal for int() with base 10: '0     # 0=不更新，1=从gitee检查更新(国内推荐)，2=从github检查更新' Traceback (most recent call last):   File "C:\Users\Administrator\Desktop\noellebot\noelle-bot-setup\hoshino\service.py", line 345, in wrapper     ret = await func()   File "C:\Users\Administrator\Desktop\noellebot\noelle-bot-setup\hoshino\modules\bili-notice-hoshino\bili_notice_hoshino.py", line 53, in bili_watch     rst, dylist = await dymgr.get_update()   File "C:\Users\Administrator\Desktop\noellebot\noelle-bot-setup\hoshino\modules\bili-notice-hoshino\dymgr.py", line 155, in get_update     await check_plugin_update()   File "C:\Users\Administrator\Desktop\noellebot\noelle-bot-setup\hoshino\modules\bili-notice-hoshino\dymgr.py", line 732, in check_plugin_update     way = conf.getint('common','if_check_update')   File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\configparser.py", line 818, in getint     return self._get_conv(section, option, int, raw=raw, vars=vars,   File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\configparser.py", line 808, in _get_conv     return self._get(section, conv, option, raw=raw, vars=vars,   File "C:\Users\Administrator\AppData\Local\Programs\Python\Python39\lib\configparser.py", line 803, in _get     return conv(self.get(section, option, **kwargs)) ValueError: invalid literal for int() with base 10: '0     # 0=不更新，1=从gitee检查更新(国内推荐)，2=从github检查更新'
然后这个是 config.ini 内的所有内容
`# b站动态监视器配置文件。请不要任何删除配置项。
内容请参看https://github.com/kushidou/bili-notice-hoshino/wiki/config%E9%85%8D%E7%BD%AE
[common]
轮询间隔，单位秒，不建议低于5s
poll_time = 15
log_max_days = 7
trace, debug, info, warn, error
log_level = debug
分钟，如果动态时间长于这个，认为是旧动态并忽略
available_time = 30
只推送视频内容
only_video = false
只推送动态内容, only_video=ture时失效
only_dynamic = false
是否推送转发内容，上面两个任意为true时失效
repost = true
全局屏蔽词，如果想看广告的话这里留空
global_black_words = 拼多多,恰饭,课程,免费领取
默认是否显示转发的抽奖动态，true或false
sharelucky = false       # 是否发布 转发的 抽奖动态（含转发他人抽奖、发布抽奖结果）
是否检查更新，如果有更新也只会输出在日志中
if_check_update = 0     # 0=不更新，1=从gitee检查更新(国内推荐)，2=从github检查更新
图片及缓存
[cache]
素材图片缓存时间（包括图文动态、视频封面、专栏封面等。）0=不删除
image_cache_days = 7
是否缓存生成的动态卡片，命名方式： uid_nick_dyid_type.png
dycard_cache = false
动态卡片缓存时间，0=不删除
dycard_cache_days = 7
[authority]
关注和取关指令的执行权限
admin = 只有机器人管理员可以, group = 只有admin+群主+群管理, all = 所有人都可以
follow = group
机器人控制指令，注意指令是全局生效的，建议使用admin。
cmd = admin
卡片绘制相关
[drawCard]
卡片风格，支持web和app
style = web
动态卡片宽度，默认680
width = 680
动态卡片最大长度，未使用
height_max = 1200
元素缩放倍率，以680为基础。过小可能比例不协调，过大可能元素超出图片。
box_size_agnification = 1.0
图片的限制尺寸，作为长边，min_size是多图时图片的正方形裁剪大小
image_max_size = 320
image_min_size = 104
单图时，图片的最大比例，纵图和横图共享，默认3:4，填入整数。也可以16:9等来适配手机图片。
image_ratio = 3:4
大字体，用户昵称
large font, nickname
font_size_1 = 18
中字体，正文、视频(等)标题、转发页的昵称
medium font size, normal text, title of video/article/audio/..., nickname in repost
font_size_2 = 14
小字体，三连信息、视频(等)简介、视频(等)播放和弹幕信息
small font size, like/comment/repost number, description and play count of video/article/audio/...
font_size_3 = 12
是否显示用户的头像框
need_avatar = true
是否显示用户的卡片背景牌
need_fan_bg = true
`

删除更新检查那一行#号及后面的内容，或者使用git  clone的方式获取最新代码（而不是从release下载）

删除更新检查那一行#号及后面的内容，或者使用git  clone的方式获取最新代码（而不是从release下载）

行，我试试Git

repo: kushidou/bili-notice-hoshino


text:
What is the difference between Proton Native and React Native for Windows by Microsoft ?

I am confused between Two

What is the difference between Proton Native and React Native for Windows by Microsoft ?

And Do proton support Windows XP and Windows 7

RN for Win by microsoft  support only windows 10 . But I need windows Xp and 7 support ?

Do you support all React Native Components ?

For example , if I use react native camera and use react native paper library ... Can I build for windows without any problem ?

Proton Native use QT, and react-native-windows use UWP platform

source: gharchive/issue

authors: RageshAntony misaeldossantos

license: MIT

license_type: permissive

license_source: github-api


text:
Index_set_bitvector

Обновить свою ветку по main.
Создать файл source/index_set_bitvector.cpp.
В нём определить класс ogxx::Index_set_bitvector: public ogxx::Index_set, public ogxx::Indexed_iterable<Scalar_index>.
Реализовать интерфейс множества на основе vector<bool>.

Здравствуйте, Дмитрий Рустамович. Какие еще методы мне нужно реализовать?

Стражи включения в .cpp файле не нужны (удалил). Включаемые заголовки надо указать правильно (поправлено).
Добавить resize в методе insert -- сделано в add (перенёс оттуда). Методы add и remove удалил, потому что их нет в интерфейсах.
Реализовать методы Iterable: is_empty и iterate (через stl_iterator).
Реализовать методы Indexed_iterable: get и set.

Здравствуйте, Дмитрий Рустамович. Я закоммитил изменения в файле у себя на брэнче. Можете посмотреть?

Добрый день! Нет полного соответствия реализуемым интерфейсам, вместо заголовочного файла index_set.hpp (его не существует) надо подключать st_set.hpp. Попробуйте скомпилировать свой cpp-файл.

А мне получается заголовочные файлы написать надо? Их нет в репозитории, следовательно файл скомпилироваться не может...

Попробуйте на него тест написать.

Коммитнул тест для index_set_bitvector на свой branch

Неплохо было бы его собрать. Битвектор не Indexed_iterable, а Sized_iterable. Соответственно, dynamic_cast возвращает там nullptr, и тест валится вообще.

repo: kuvshinovdr/OGxx


text:
Make events sortable

See kuzmoyev/beautiful-date#9
I tried to merge events from two calendars retrieved with https://github.com/kuzmoyev/google-calendar-simple-api like this:
events = list(feries[1 / Nov / 2020 : 30 / Nov / 2020])
events.extend(cours[1 / Nov / 2020 : 30 / Nov / 2020])
for event in sorted(events):

sorted fails. This may be solved with https://docs.python.org/3/library/functools.html#functools.total_ordering

I like the idea of Events being sortable and using the functools.total_ordering!
For now
for event in sorted(events, key=lambda e: e.start):

should do.
Thank you for your submission.

:tada: Thanks!

authors: kuzmoyev vpoulailleau

repo: kuzmoyev/google-calendar-simple-api


text:
Plugins system

This is the place to work on the Kuzzle Backoffice Plugins System.
The Plugins System will enable to install a plugin via the web interface and plug a freshly installed plugin on the fly, without page reload. Plugins will be able to add routes to display dedicated pages, but also to enrich the interface of the standard sections (e.g. add a new button to "track a user").
TODO in this PR

[x] POC of the dynamic (lazyload) require of a plugin file,
[x] Execute a plugin default function with a context,
[x] create a Plugins service in charge to load, register, execute and unload the configured plugins,
[x] load plugins as npm modules,
[x] POC page plugins

[Current coverage][cc-pull] is 83.33% (diff: 51.72%)

Merging [#7][cc-pull] into [develop][cc-base-branch] will decrease coverage by 3.03%

@@            develop         #7   diff @@
==========================================
  Files            33         38     +5
  Lines           308        336    +28
  Methods           3          3
  Messages          0          0
  Branches         17         17
==========================================
+ Hits            266        280    +14
- Misses           38         52    +14
  Partials          4          4

Powered by Codecov. Last update [744030e...912669f][cc-compare]
[cc-base-branch]: https://codecov.io/gh/kuzzleio/kuzzle-backoffice/branch/develop?src=pr
[cc-compare]: https://codecov.io/gh/kuzzleio/kuzzle-backoffice/compare/744030e9c5b3affa462f2520fe93c4a14ef4dd35...912669f579fcdaaea0ca6b2c181a2942cd4aa730?src=pr
[cc-pull]: https://codecov.io/gh/kuzzleio/kuzzle-backoffice/pull/7?src=pr

source: gharchive/pull-request

repo: kuzzleio/kuzzle-backoffice

license_source: bigquery


text:
Add resources configuration options to all jobs

This patch adds resources configuration options to all job pods.
Some production grade clusters force to set resources to be able to calculate
quotas correctly. So it is crucial to be able to set those resources an all
pods.
This patch include breaking changes, because it changes the structure of the
values.
Closes #2
Signed-off-by: Sven Haardiek sven.haardiek@uni-muenster.de

I know it is a bit annoying that this patch has breaking changes. I thought this was the best way to add those new configuration options.
If this is not wanted, I am happy to change it as requested. I do not want to create a yet another fork of the helm chart for stolon.
There are too many of them currently and it would be nice to work together.

repo: kvaps/stolon-chart


text:
Feature: Support for Mariadb

Hi
I've been trying to get this running locally on our internal stack. We use Mariadb, which has strong compatibility, but not 100%, with MariaDB. The first issue was trivial to solve. I'm happy to contemplate putting a PR together for resolving the second - but would need a pointer as to how you want to support it.
First issue - (see patch) - the liquibase doc also suggests changeColumnDataType is missing
Allowing_mariadb_connection_to_start_server_.patch
The second issue is (I guess?) likely to do with the fact Mariadb has got a json alias (to a varchar) but not a proper type. I haven't come across the "::json?" notation previously in the converters previously. I suspect this will be one of those that is different dependant on the backend - any pointers as to how you would like to fix this?
Resolved [org.springframework.dao.InvalidDataAccessResourceUsageException: could not execute statement [(conn=347) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '::json,'root','asdasd')' at line 1] [insert into connection (additional_jdbc_options,authentication_type,connection_type,database_name,datasource_type,description,display_name,hostname,max_executions,password,port,review_config,username,id) values (?,?,?,?,?,?,?,?,?,?,?,?::json,?,?)]; SQL [insert into connection (additional_jdbc_options,authentication_type,connection_type,database_name,datasource_type,description,display_name,hostname,max_executions,password,port,review_config,username,id) values (?,?,?,?,?,?,?,?,?,?,?,?::json,?,?)]]
For ease of replication, I'm running MariaDb version 11.1.3, with the rest as defaults.
`

Hey, I haven't updated that Readme section in ages and only tried it once aswell, I should have probably removed the reference to mysql/mariadb as the kviklet DB instead of raising wrong hopes.
Is there a particular reason you cannot run postgres? I think I could try fix these problems. Metabase for example makes it work somehow I believe, but of course supporting two database types instead of one is a bit of a maintenance overhead, so I'm wondering if that is really worth it 😅

Hi - thanks for quick response.
All of our databases are on Mariadb, hosted on AWS. We have approximately 60 database schemas across 2 Mariadb servers, both Mariadb, multi-AZ in AWS. We have an internal dev team of around 25 engineers who are all used to maintaining and building against Mariadb. That includes upgrading Mariadb regularly, etc.
If we really had to, we could spin up a small postgres instance at low cost, but at the moment, my mindset is more in the space of reducing the infrastructure surface to keep our devs doing Java build, rather than having to update 'another db' instance regularly.
Great product idea btw - in March, we almost built something exactly like kviklet but got delayed a bit, so when we saw kviklet we thought we'd try it as it's an exact fit and further than we would have taken it.

Thanks - AWS's auto-updates are mostly for minor updates (which we have turned on) so would still have to deal with major upgrades.
(Look forward to perhaps one day seeing the proxy for MySQL/Mariadb feature. One other feature to consider would be for IAM roles, which we were going to build - similar to ConsoleMe by Netflix but a much lighter way)

Building the Proxy for postgres was super fun but honestly my confidence in it is rather low because:

I have only tested it with one specific postgres version
I have only used it with my db client of choice (Datagrip)
It runs as an extra thread on the Kviklet container almost like another separate process, depending on what you do i'm sure you could exhaust recourses quickly
It doesn't support SSL encryption between the user and Kviklet atm

The last one might be fixable, but fixing the other three confidently simply requires quite a bit of effort. Doing this for multiple databases... I think that's definitely a full-time job if not two. There is tools like Teleport and StrongDM out there, that do this btw but they have hundreds of engineers and the tools are correspondingly expensive.
So, unless I figure out a way to do Kviklet full-time or other contributors provide the code more proxy support is unlikely to happen I think.

Regarding IAM roles, do you mean temporary access to specific resources managed in the same way as DB access is managed? E.g. a user requesting temporary access to a specific role to write/read from an SQS queue and only getting it after approval?
I have actually never heard of ConsoleMe but I took a look and it looks to solve a variety of problems, some of which I think are better solved via good IaC management. But something like the mentioned use-case, I'd be happy to bring to Kviklet eventually.

I spent some time today on figuring out what's going on but don't have an immediate solution yet.
I am making use of postgres' native json columns in multiple places. To make Kviklet compatible with multiple database engines for storing state I'd have to convert those back to text columns.
This means writing a migration and changing the code so that it can deal with text columns, but it also means no more json based querying. Which tbf I only use for debugging purposes so far but is kinda handy sometimes.
Now I also don't know if this support of multiple DBs really something I should strive for.
I looked at some other selfhosted tools. For reference: Gitlab and Langfuse both only support PostgreSQL for self hosting. Metabase  supports mariadb, mysql and postgres. Sonarqube support MS sql server, oracle and postgres. Grafana supports mysql and postgres.
Postgres is definitely the common denominator here 😅 Gitlab has a post on why they ended supporting MySQL as well: https://about.gitlab.com/blog/2019/06/27/removing-mysql-support/
So long story short -> I'm leaning towards postgres only so far.

I removed mentions of mysql from the readme.

We've seen a steady migration to PostgreSQL and recently had less than 1200 GitLab instances reporting their usage of MySQL. At the time there were 110,000 instances using PostgreSQL.

Just in general seems like the industry is shifting to postgres as the clear favorite
Sorry to disappoint on this front. Happy to help adapt Kviklet on other features for your use cases though!

authors: Askir landbaychrisburrell

repo: kviklet/kviklet


text:
auth caching doesnt fully work with multiple ldap

I have a setup with two auth servers:
auth_ldap_servers ldap1;
auth_ldap_servers ldap2;

Auth works fine whichever the server contains the user i'm sending credentials for, but for caching it's not the same:
If the user is found in ldap1, the info is properly cached in nginx, ldap2 is not searched for at all, and ldap1 isnt queried for the time the info is cached.
If the user is not found in ldap1 but only in ldap2, ldap1 will be queried at every subsequent user hit (even though nginx has cached the fact that 'user has been found in ldap2'), thus the log is filled with error messages from the query on ldap1 not finding user in there:
2018/03/20 15:25:44 [error] 1568#0: *75989 http_auth_ldap: Could not find user DN,
client:
2018/03/20 15:25:44 [error] 1568#0: *75991 http_auth_ldap: Could not find user DN, client:
2018/03/20 15:25:45 [error] 1568#0: *75993 http_auth_ldap: Could not find user DN, client:

User still doesnt have to resend creds as he's been authentified in ldap2, but the logs are filing up...
Is there a way to search first for the cache (being global to all servers) before trying to auth/search in each server ?

I am using 2 ldap server for 2 domain accounts and will be interested in the solution to reduce the log noise as well.
@landryb not to hijack your thread but are you using require group in your config and if so is nested groups working for you ?

was fixed by 81f7e24 / #219

authors: ibexmonj landryb

repo: kvspb/nginx-auth-ldap


text:
[Forge Version] Netherite Mobcatcher misnamed

Minor issue, the netherite mob catcher and diamond mob catcher are both named diamond

fixed  in  next  update.

authors: Saereth kwpugh


text:
Taking input from console for client

How can run a client by taking the string from the console, encoding it to the respective record and emitting it to the server?

I also want to specify the map of "type of record"(R,P) to the record object(custom object created by me instead of the default record object)

repo: kxepal/python-astm


text:
Does not work with new SparseVHD settings on WSL2 pre-release

As per title, this app fails on the new SparseVHD experimental settings format which is enabled here:
Experimental Settings

Sorry, I rarely use Windows now so I can no longer maintain this project. I will archive this repository but feel free to fork :)

authors: ameeno kxxt

repo: kxxt/WSLDiskShrinker


text:
팔로우 목록 접기 클릭하면 에러

일단 이 확장을 키면 기본적으로 팔로우 목록이 펼침 상태가 되요.
이걸 접기 누를시 인터넷 화면이 검은 화면으로 변해요
제가 팔로우 한 스트리머는 50명이네요
크롬, 윈도우 10에서 사용하고 있어요
혹시 몰라서 시크릿 모드로 치지직 플러스만 킨 상태로
로그인 안하고 하니까 접기 눌러도 검은 화면은 되지 않네요.
로그인 하고 이것만 킨 상태로 접기 누르면 똑같이 검은 화면이 떠요

안녕하세요~
현재 즐겨찾기 기능은 팔로우한 좌측 패널 목록에서 내가 즐겨찾기한 목록들을 찾아 이동시키는 방법으로 구현되어 있습니다.
때문에 자동 더보기 기능을 통해 리스트가 자동으로 펼쳐지게 한 것은 의도되어 있어요!
다만 접기 기능으로 해당 버그가 일어나는 것은 당장 원인을 찾기 힘드네요.
방법을 바꾸어 보거나 방지해보는 식으로 고민해보겠습니다

도움이 될진 모르겠지만 치즈나이프의 사이드바 자동 갱신이 켜져 있을경우에도 몇 초 간격으로 해당 현상이 발생해요


text:
Distribute via Snapcraft

Similar to #233, Linux users should be able to install sqlc via snap. I'm less familiar with snaps, so any help from others in the community would be helpful. I'm planning on using GoReleaser as a starting point.

While I haven't figured out how to publish a snap via snapcraft to the snap store (oh snap), I have successfully registered the sqlc name.

I'm planning on following this guide to build the sqlc snap.

v1.0.0 is now available
sudo snap install sqlc

repo: kyleconroy/sqlc


text:
Use item insert/removal animations for sections with one item and no header + footer

There's a somewhat common pattern to add an empty state, some other banner, etc, in a Section with a single row, and no header or footer. In these cases, the section is basically "invisible", the point is showing the row's content. Unfortunately though, because the Section is the thing being inserted here, not the single row of content, the standard section insertion animation is used, instead of the item insertion animation.
This PR changes the logic of what animation to use, so if a section is inserted that has: A single item, no header, and no footer, the insertion animation for the single item will be used instead.
Checklist
Please do the following before merging:

[x] Ensure any public-facing changes are reflected in the changelog. Include them in the Main section.

I won't fight you too hard on this, but it doesn't feel like something that should be implemented at the Library level - if you want this, you should just have an empty section always there and conditionally add/remove the element.

I won't fight you too hard on this, but it doesn't feel like something that should be implemented at the Library level - if you want this, you should just have an empty section always there and conditionally add/remove the element.

I went back and forth on this a few times, but landed here for a couple reasons:

I've seen this question come up from time to time – eg, insert animations aren't "working" for this use case; which I recently realized was because of the behavior this fixes.

Re this:

if you want this, you should just have an empty section always there and conditionally add/remove the element

This isn't always doable or realistic: Many list configs specify spacing between sections; so you'd end up with blank space in the list (I suppose we could change behavior to filter out completely empty sections, which may be a good change regardless). But requiring an empty section feels somewhat counter-intuitive to me / a bit of a gotcha – whereas IMO this change makes the list do what you'd intuitively "expect".

Reverting, caused some crashes: https://github.com/kyleve/Listable/pull/431

authors: kylebshr kyleve

repo: kyleve/Listable


text:
Do not log sensitive data in logs

This PR changes the behaviour of install command regarding watching installation. The algorithm is taken from is-installed.sh. Following changes are introduced:

Do not print installer logs - they may contains sensitive information
On error print a line explaining how user cen fetch the logs himself
There is a possibility to specify watch timeout
Installation goes indefinitely unless timeout is specified
On timeout errorLog from installation status is printed

Fixes #26

The uninstall is doing exactly the same, could you please apply the same fix

authors: a-thaler sjanota

repo: kyma-incubator/kyma-cli


text:
Bring back EventTypePrefix config migration step

Description
Bring back EventTypePrefix config migration step.
This is a revert for https://github.com/kyma-incubator/reconciler/pull/392.

/hold

/hold cancel

Verified here: https://github.com/kyma-project/test-infra/pull/4588.

repo: kyma-incubator/reconciler


text:
Migration from APIRule v1beta1 noop handler to v2alpha1 noAuth causes downtime

Description
Migration from APIRule v1beta1 noop handler to v2alpha1 noAuth causes downtime. For some period of time calling exposed workload returns 403.
Expected result
Exposed workload responds with 200
Actual result
Exposed workload responds with 403
Steps to reproduce
export NAMESPACE=test
export GATEWAY=kyma-system/kyma-gateway
export DOMAIN_TO_EXPOSE_WORKLOADS={KYMA_DOMAIN}

kubectl create ns $NAMESPACE
kubectl label namespace $NAMESPACE istio-injection=enabled --overwrite

kubectl apply -f https://raw.githubusercontent.com/istio/istio/release-1.22/samples/httpbin/httpbin.yaml -n $NAMESPACE

cat <<EOF | kubectl apply -f -
apiVersion: gateway.kyma-project.io/v1beta1
kind: APIRule
metadata:
  name: httpbin
  namespace: $NAMESPACE
spec:
  host: httpbin.$DOMAIN_TO_EXPOSE_WORKLOADS
  service:
    name: httpbin
    namespace: $NAMESPACE
    port: 8000
  gateway: $GATEWAY
  rules:
    - path: /headers
      methods: ["GET"]
      accessStrategies:
        - handler: noop
EOF

curl -ik -X GET https://httpbin.$DOMAIN_TO_EXPOSE_WORKLOADS/headers -H "test:true" -> 200

cat <<EOF | kubectl apply -f -
apiVersion: gateway.kyma-project.io/v2alpha1
kind: APIRule
metadata:
  name: httpbin
  namespace: $NAMESPACE
spec:
  hosts:
    - httpbin.$DOMAIN_TO_EXPOSE_WORKLOADS
  service:
    name: httpbin
    namespace: $NAMESPACE
    port: 8000
  gateway: $GATEWAY
  rules:
    - path: /headers
      methods: ["GET"]
      noAuth: true
EOF

curl -ik -X GET https://httpbin.$DOMAIN_TO_EXPOSE_WORKLOADS/headers -H "test:true" -> 403 then 200

Troubleshooting

so migration from allow and no_auth to noAuth both works. did not get to check if jwt -> noAuth works

Issue is reproducible. 403 happens until the VS is switched directly to service, so it most likely means that oathkeeper is not allowed to access the endpoint in an authorization policy

authors: barchw strekm

repo: kyma-project/api-gateway


text:
Migrate configuration views to new translatable labels

Migrate configuration views to new translatable labels.
Acceptance Criteria

[ ] Follow Project DOD
[ ] extract common statuses and tooltips to common section on en.yaml
[ ] Migrate configuration:

[ ] config map
[ ] secrets
[ ] roles
[ ] cluster roles
[ ] role binding
[ ] cluster role binding
[ ] oauth 2 clients
[ ] git repositories
[ ] custom resource definitions (namespace and clusterwide)
[ ] service accounts
[ ] DNS entries
[ ] DNS providers
[ ] gateways
[ ] issuers
[ ] certificates

https://github.com/kyma-project/busola/issues/620

repo: kyma-project/busola


text:
Log provisioner kubeconfig parameters

Description
there were cases when kyma upgrade failed with using kubeconfig to an SKR from provisioner
"msg":"Process operation failed: failed to create BTP Operator input: invalid configuration: no configuration has been provided, try setting KUBERNETES_MASTER environment variable",

When debugging I have stumbled upon an interesting case when executing graphql query directly to provisioner. Sometimes it returns operational and valid kubeconfig, sometimes it returns nil
$ cat gql_runtime_status.bash
runtime_id=5ecffe9c-7663-4433-b813-705cf70179a0

curl 'localhost:3000/graphql' \
    -H 'Content-Type: application/json' \
    -H 'tenant: e449f875-b5b2-4485-b7c0-98725c0571bf' \
    --data-binary @- << EOF
{
  "query":"query {\n runtimeStatus(id: \"$runtime_id\") {\n runtimeConfiguration{kubeconfig}}}"
}
EOF

$ ./gql_runtime_status.bash | jq --raw-output '.data.runtimeStatus.runtimeConfiguration.kubeconfig'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  2236    0  2111  100   125   4275    253 --:--:-- --:--:-- --:--:--  4535
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: **redacted**
    server: https://api.afadf6b.stage.kyma.ondemand.com
  name: shoot--kyma-stage--afadf6b
contexts:
- context:
    cluster: shoot--kyma-stage--afadf6b
    user: shoot--kyma-stage--afadf6b-token
  name: shoot--kyma-stage--afadf6b
current-context: shoot--kyma-stage--afadf6b
kind: Config
preferences: {}
users:
- name: shoot--kyma-stage--afadf6b-token
  user:
    token: **redacted**

$ ./gql_runtime_status.bash | jq '.data.runtimeStatus.runtimeConfiguration.kubeconfig'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   530  100   405  100   125     13      4  0:00:31  0:00:30  0:00:01   104
nil

the successful query takes a few ms, returns no error and working kubeconfig, the unsuccessful query takes 30 seconds, also returns no error and has nil as kubeconfig
Related issue(s)

/retest

lgtm

/retest

authors: tillknuesting wozniakjan

repo: kyma-project/control-plane


text:
Adjust HTTP codes for bindings PUT

Description
Changes proposed in this pull request:

Return 409 when trying to create a binding with existing ID but different parameters
Return 200 when trying to create a binding with existing ID and the same parameters
Return 400 when trying to insert to DB a binding with ID that already exists

Related issue(s)

See #1352

/kind enhancement

repo: kyma-project/kyma-environment-broker


text:
Add support for triggering syncs in the Kymas specs

Description
Inspired by ArgoCD's selective sync options in the CR, we could have something similar in KLM: https://argo-cd.readthedocs.io/en/stable/user-guide/sync-kubectl/
This would enable us to trigger reconcile runs on SKRs, and also selectively on modules and/or their resources.
Reasons
Sometimes we have to analyze reconciliation related issues on SKRs, and the first thing we need to do in these cases, is to trigger a reconcile run and observe what's happening. When debugging these issues, this feature would significantly help us solve the problems.
Another aspect is, when we're having troubles with SKRs and some modules are unable to sync up properly due to some external configuration issues, once those are sorted out, we would be able to trigger a run, and verify whether the configuration has been adjusted properly for the module to go into ready state.
Acceptance Criteria

[ ] We have a way to sync SKRs' modules, and/or their resource selectively, triggered manually, specified in the kymas CR
[ ] The feature works, and we can verify that by adding a such a sync spec into the CR, KLM picks it up and starts working on it

Feature Testing
No response
Testing approach
No response
Attachments
No response

@gczuczy my understanding is that you would like to just trigger reconciliation for one given resource (Kyma, Manifest, Watcher) right?
Are there any additional requirements? Would you, for example, require the reconciliation of all the modules of a given type?

@janmedrek I think that would be a good useful feature. I'm not sure of the possibilities here, but some mechanics that would allow a full sync by default, and optionally specifying criteria would come quite handy at times.
Like, if not criteria specified, then a full sync, if modules/types/etc are specified, then just whatever matches that.

ACs:

Sync with SREs, show them how it is currently working
Define new ACs, if current feature-set is not applicable to them

Hint:

In current implementaion:

internal PR /kyma/documentation/pull/744

authors: gczuczy janmedrek jeremyharisch ruanxin

repo: kyma-project/lifecycle-manager


text:
Preview: handle unresolved symlinks, handle failed content read

The proposed changes implement a more graceful handling of preview for non-readable files and circular symlinks.

handles symlinks as directories (similarly as before)
but only if the symlink path is set (which can be unset for circular symlinks)
avoids file read panic and shows (file not readable) instead

tested with the following files
permissions     file                   preview

--w-------      denied.txt             (cannot read file)
lrwxr-xr-x      link -> some-dir       # shows files in the dir
drwxr-xr-x      some-dir               # shows files in the dir
lrwxr-xr-x      self -> self-link      (unresolved symlink)
lrwxr-xr-x      self-link -> self      (unresolved symlink)

Awesome! I just added the case where the symlink points to text file or binary, which should be previewed as well. Could you check?

Now I understand the symlik_dir already shows it is definitely a dir.
I have spilt up the general check and content check into two fn now.
This way the non-dir symlinks can use the same code as the regular files.

authors: kyoheiu ubunatic

repo: kyoheiu/felix


text:
ロールの説明が言語設定を日本語にしても英語のまま

下の画像のようになってしまう．
site-manage/site-manage-tool/tool/src/bundle/sitesetupgeneric.properties
の該当部分を変更しても反映されないためどこかにハードコーディングされている？
SAK-22344に記述があるがSakai11では変更されているようでよく分からない

chef_site-siteInfo-list.vmの762行目あたりの
#if ($role.Description)
  #set($description = $role.Description)
#else
  ## search for internationalized description in bundle
  #set($propertiesKey = "sitegen.roledescription.")
  #set($RoleId = $role.Id)
  #set($RoleId = $RoleId.replaceAll(" ",""))
  #set($roleDesc="${propertiesKey}${RoleId}")
  #set($description = $tlang.getString($roleDesc,""))
#end

の部分を
##if ($role.Description)
  ##set($description = $role.Description)
##else
  ## search for internationalized description in bundle
  #set($propertiesKey = "sitegen.roledescription.")
  #set($RoleId = $role.Id)
  #set($RoleId = $RoleId.replaceAll(" ",""))
  #set($roleDesc="${propertiesKey}${RoleId}")
  #set($description = $tlang.getString($roleDesc,""))
##end

とコメントアウトすることで.propertiesファイルを読み込ませることができる．

（これで支障が出ないか要確認）
参加者を追加するときのロール設定画面でも英語のままなのでこちらも対応する必要がある．

参加者追加画面について，

./site-manage/site-manage-participant-helper/src/bundle/
の直下にroledescription.propertiesとroledescription_ja.propertiesという新しいファイルを作成して
そこにロールの説明を記述

./site-manage/site-manage-participant-helper/src/java/org/sakaiproject/site/tool/helper/participant/rsf/SameRoleProducer.java  でroledescription.propertiesを参照するように記述を変更

とすることにより日本語で表示できるようになる．

上記のように修正．

repo: kyoto-u/openpanda


text:
10

No Swebok eles apresentam um WBS com os processos da gerência de configuração:

Gerenciamento do processo de gerência de configuração;
a.	Análise do contexto organizacional
b.	Levantamento das restrições e definição de orientações para a execução do processo.
c.	Planejamento do processo
d.	Definição do plano de ação
e.	Vigilância (controle) da Gestão de Configuração

Identificação de configuração de software;
a.	Identificar os itens a serem controlados
b.	Bibliotecas de Software

Controle de configuração de software;
a.	Requisição, Avaliação e Aprovação das Mudanças
b.	Implementação das mudanças
c.	Desvios e Renúncias (trade-off)

Registro e relatório de informações de configuração de software;
a.	Informações sobre o Status da Configuração
b.	Relatórios sobre o Status da Configuração

Auditoria de configuração de software;
a.	Auditoria de Configuração Funcional do Software
b.	Auditoria da Configuração Física do Software
c.	Auditoria da Baseline durante o processo

Gerenciamento e entrega de liberação de software;
a.	Construção do Software
b.	Gerenciamento das Releases do Software

ATIVIDADE ENTREGUE FORA DO PRAZO.

COM APROVEITAMENTO 👍

authors: rafareisbr willianjferreira

repo: kyriosdata/git


text:
Item de configuração

1)Podemos ter um único arquivo como item de configuração?
R:Sim podemos.
1.1)Podemos ter um item de configuração que reúne vários arquivos, por exemplo, dezenas de classes Java, ou Javascript, por exemplo?
R:sim também pode
Referência = "Em função da granularidade utilizada em um contexto de serviços, um item de
configuração pode ser formado por um conjunto de artefatos ou componentes, bem
como um único artefato ou componente pode ser formado por vários itens de
configuração. "-https://www.softex.br/wp-content/uploads/2013/07/MPS.BR_Guia_de_Implementacao_SV_Parte_2_20132.pdf
2)Leia a definição de item de configuração oferecida pela wikipedia. Segundo a definição disponível na wikipedia todo item de configuração deve possuir um identificador único?
R:sim deveria;
2.1)Este é um dos resultados esperados do processo de GCO (MPS.BR)? Se afirmativo, qual seria o resultado?
R:Sim é um dos resultados esperados:
referencia-"(A partir do nível F) Itens de configuração são identificados e seus
níveis de controle são estabelecidos.
NOTA: (item requerido) Devem ser identificados itens de configuração tanto em
nível de projeto/serviço quanto organizacional."
3)Uma issue no Github pode ser considerada um item de configuração?
R: Não encontrei nenhuma referência formal que sustente essa afirmação, por isso digo que não. Complementando o argumento imagino que a issue tem função de ser um "tópico de discução" ou coisa equivalente, ela por si só, não é um item de configuração/produto de trabalho do projeto, entretanto acredito que ela possa dar origem a um ou que podemos colocar um dentro de uma issue de maneira informal, mas formalmente falando re-afirmo minha resposta de que issue não são classicamente itens de configuração

COM APROVEITAMENTO :+1:

authors: lucasnshunter willianjferreira


text:
🛑 grazindafranco.com is down

In 0e6613d, grazindafranco.com (https://grazindafranco.com) was down:

HTTP code: 0
Response time: 0 ms

Resolved: grazindafranco.com is back up in 07c2920 after 15 minutes.

repo: kyryl-bogach/upptime


text:
log debug statements on controller and atcp_server modules in the hot path

When working on issue #172 and running more benchmarks, I've found these log debug assessments on controller and atcp_server modules in the hot path, same issue as https://github.com/kytos-ng/flow_manager/issues/77, until the logger implementaiton works async or with a queue we should add a conditioal out these log debug statements in the hot paths since they can contribute to significant latency specially during spiky load, since lately there has been a major focus on enhancing performance these can lead to instability for now until the async/queue implementation can be prioritized.

https://github.com/kytos-ng/kytos/blob/master/kytos/core/atcp_server.py#L163
https://github.com/kytos-ng/kytos/blob/master/kytos/core/controller.py#L544
https://github.com/kytos-ng/kytos/blob/master/kytos/core/controller.py#L560
https://github.com/kytos-ng/kytos/blob/master/kytos/core/controller.py#L599
https://github.com/kytos-ng/kytos/blob/master/kytos/core/controller.py#L626
https://github.com/kytos-ng/kytos/blob/master/kytos/core/controller.py#L521

Thanks to https://github.com/kytos-ng/kytos/pull/257 this isn't a concern anymore.

repo: kytos-ng/kytos


text:
Added AUTHORS_NG.rst

In our last meeting, it was recommended to add a new authors file for Kytos-ng. I've added a section describing our team, authors, and contributors we've had in version 2022.1, I suppose this way it makes clearer who currently is part of the team maintaining Kytos-ng. If you have any other suggestions or want to change any other personal detail, please let us know.

Shouldn't Daniela and Luis be included as contributors?

Included here https://github.com/kytos-ng/kytos/pull/170/commits/7b156e979896917da40e444ad4a5ca2db70c411d

LGTM

Appreciated your review, Antonio.


text:
Delay improving

Speedup by 2.663 %
+2 bytes

Closing as it was made obsolete by #196


text:
Generator cannot be used

Hi,
upon trying out your generator a compiler warning is emitted:
Generator 'LaunchSettingsGenerator' failed to generate source. It will not contribute to the output and compilation errors may occur as a result. Exception was of type 'FileNotFoundException' with message 'Could not load file or assembly 'Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The system cannot find the file specified.'
My repro is here:
https://gist.github.com/MichalBrylka/17a2b66c2885450278ba9ceaca5fdea8
Also - have you considered testing of such generators. Normal approach does not seem to work here, see:
https://gist.github.com/MichalBrylka/933bd1313a097bec63cabd0ac02fc29b
you cannot create a compilation with 2+ top level programs to begin with.

BTW, this works almost flawlessly when used as nuget:

Using as nuget is the only supported way. How else are you trying to use it?

you cannot create a compilation with 2+ top level programs to begin with.

This is precisely what this nuget package provides: it will remove/add the Compile items as needed to match the "startup" file from the dropdown.

@kzu Fair enough - I'm closing this issue. Thanks for explanations

authors: MichalBrylka kzu

repo: kzu/SmallSharp


text:
[Issue] All accounts recieve invite to same server when using invite link

Describe the bug
When clicking an invite link to a server in a browser, the invite is sent to all added accounts even though I'm only logged into one account. This leads to all my accounts joining a server at the same time, which is not a desired outcome.
To Reproduce
Steps to reproduce the behavior:

Add multiple accounts from the settings page.
Click and accept a discord invite link from a browser.

Expected behavior
Only the currently logged in account should recieve an invite.
Information (please complete the following information):

OS: Linux
Plugin Version: 1.3.0
Discord version: Stable
Compact Mode enabled? No
Encryption enabled? No

I have followed the steps and it produced the expected behavior.

authors: Tank-Missile sitiom


text:
Compiling BIO_TP with new directory layout

I hope you are well!
Thank you for the awesome instructions on getting FVCOM up and running. I've finally gotten the hydrodynamic portion of the model to a spot where we are ready to add in the BIO_TP model.
To that end, I've been having trouble linking the model. Here's what I have done so far.

Compiled BIO_TP from within FVCOM_BIO/BIO_TP
Copied fjulian.inc into the FVCOM/src directory
turned on FLAG_25 (-DBioGen) and specifid the BIOLIB and BIOINCS to be $(TOPDIR)/FVCOM_BIO/BIO_TP

Then, trying to make the full model I face the following error.
make: *** No rule to make target 'mod_bio_3D.F', needed by 'mod_bio_3D.o'.  Stop.

Am I on the right track here? Do you have any other suggestions on how to set this up?
Thank you! :)

Hi Chris, @coffm049-2
Probably it would be good to meet, so I can look at your terminal and see the directories.  If you compiled FVCOM, the mod_bio_3D.F should be in the directory where you did 'make' to build 'fvcom'.  Did you run the model with just the hydro?  That is the first step.  I can meet most times this week, send me an email.  (If we figure anything out about BIO_TP, I will add them to these comments later.)
Lisa


text:
Score "(null)"

Great, funny little game!
Two details:

when your score is zero, it displays "(null)"

at the very beginning, for new players, vertical bars come really fast (maybe it could be more progressive for the first ones)

Edit: add screenshot

Good catch! will fix that.
For the level thing it is easy to implement but not my original idea. Although the speed stays the same, the difficulty level increases as the score goes up because it requires focus, and focus for a long time is hard.  Regarding the progressive approach, a good player may get inpatient at last because it is so easy in the beginning and may take too much additional time to break their record.

license: mit


text:
Omer: Agile Development, 3

Learning Objectives

Collaborating: You can effectively work in a group:
[x] 🥚 You can work with your group mates to agree on a communication plan.
[x] 🥚 As a group you can define project constraints by discussing your strength's, weaknesses and context.
[x] 🥚 During development you can ask your group for help when you need it using the agreed channels of communication.-
[x] 🥚 During development you communicate any changes in your personal situation that will impact the group.
[x] 🥚 When the project is finished your group can write a retrospective including concrete steps to make sure the next project goes smoother.Planning:
You can work in a group to plan a multi-page website written with HTML & CSS:
[x] 🥚 You can understand a web page's users by creating user personas.
[x] 🥚 You can work together to write a backlog of user stories for your personas, organized by priority (must, should, could)
[x] 🥚 You can work together to create a simple wireframe with pencil+paper and a basic drawing app like Excalidraw
[x] 🐣 You can work together to write a development strategy for must-have user stories.
[x] 🐣 You can work together to convert a development strategy into issues on a project board organized with labels and milestones.Developing:
Once the project board is set up you can work with your group to develop the website:
[x] 🥚 You can claim a task and manage your progress using the project board columns.
[x] 🥚 Your group can use issues to discuss and agree on project changes once development has begun.
[x] 🥚 You can use the help-wanted label to ask for help, and to find issues that need your help.
[x] 🥚 You can manage a separate branch with your work for each issue task.
[x] 🥚 You can create a PR that passes CI checks when your task is finished, then assign someone to review it.
[x] 🐣 You can review a group member's PR and conduct a code review using the project's checklist.

my fork of the exercises repo

Study Plan

[x] Agile Development
[x] Sprint Planning
[x] User Stories
[x]  Website Planning
[x] Working Together
[x]  Code Review
[x] HTML & CSS
[ ] Agile is not Perfect
[ ] Class Recordings

Week 1

[ ] I have pushed my progress to my fork of exercises repo

Check-In
I Need Help With:
When I try to study too much on computer, my eyes experience tiredness
and redness problem. I need to learn balanced study.
What went well?
We made a working website at the end of the week as a group and used
Slack effectively to communicate.
What went less well?
It is difficult to say that there is a harmony in the group.
Lessons Learned
It seems that working as a group is a real challenge in the IT sector.

I need to learn balanced study.

Sorry there, I'm not the one to help with this!

It is difficult to say that there is a harmony in the group.

Same as last week, or is there some improvement?

I need to learn balanced study.

Sorry there, I'm not the one to help with this!

It is difficult to say that there is a harmony in the group.

Same as last week, or is there some improvement?

It seems that working as a group is a real challenge in the IT sector.

100%. There are whole books written about this: the mythical man month, pheonix project, and many many more

There are some improvements in the group.

authors: colevandersWands omerjava


text:
Add an example for zero_like function

This is an example for zero_like function

:books: Documentation preview :books:: https://equistore--198.org.readthedocs.build/en/198/

The linter is failing! You can run it locally with tox -e lint, it will tell you what to change

Replaced by #211

authors: Luthaf melikahnd

repo: lab-cosmo/equistore


text:
feat(web): add the pointer style for CopyText

add "cursor-pointer" to the icon, don't add to CopyText directly

add "cursor-pointer" to the icon, don't add to CopyText directly

I don't think we just to add cursor-pointer to icon, because the entire CopyText is clickable.
If we just add cursor-pointer to the icon then customize children of <CopyText />, you can see that, It's not user-friendly.

add "cursor-pointer" to the icon, don't add to CopyText directly

I don't think we just to add cursor-pointer to icon, because the entire CopyText is clickable.
If we just add cursor-pointer to the icon then customize children of <CopyText />, you can see that, It's not user-friendly.

Trying to keep components single duty and not doing too many things. Also, have you tested all the places where CopyText is used?

Hello, there are some changes here and I tested almost all of the CopyText, I removes cursor-pointer from the all CopyText classname.

repo: labring/laf


text:
library to the dependencies

android studio can't resolve dependencies 'biz.laenger.android:vpbs:0.0.4'

did you add the repository too?
repositories {
    maven { url "https://raw.github.com/laenger/maven-releases/master/releases" }
}

ok, sorry... The library works fine. Thank you

authors: laenger mrcily

repo: laenger/ViewPagerBottomSheet


text:
Don't hardcode composer instller signature

Hi,
New compose-installer was just released and the checksum you had hardcoded is not valid anymore, so all build are failing.
This should fix the issue and check against checksum listed on composer official website.

This is a very annoying on their part – and dynamically fetching a signature defeats the whole purpose of having a signature in the first place

Ok, after mulling on this for a while, gonna merge it in anyway – some security is better than no security, even though this isn't ideal.

Thanks @martinssipenko ! I'll get a new release out soon

Released as v0.9.8 – thanks again @martinssipenko

authors: martinssipenko mhart

repo: lambci/lambci


text:
Dict manager

Passing:

dict_read
dict_write
dict_update

Codecov Report

Merging #118 (6128817) into main (207bbbf) will increase coverage by 1.55%.
The diff coverage is 84.37%.

@@            Coverage Diff             @@
##             main     #118      +/-   ##
==========================================
+ Coverage   71.40%   72.96%   +1.55%
==========================================
  Files          12       13       +1
  Lines         647      736      +89
==========================================
+ Hits          462      537      +75
- Misses        185      199      +14

Impacted Files
Coverage Δ

src/lib.rs
0.00% <ø> (ø)

src/memory_segments.rs
96.96% <ø> (ø)

src/relocatable.rs
94.28% <0.00%> (-5.72%)
:arrow_down:

src/dict_manager.rs
88.88% <88.88%> (ø)

src/cairo_runner.rs
69.49% <100.00%> (-3.07%)
:arrow_down:

src/ids.rs
43.75% <100.00%> (+9.13%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

authors: Juan-M-V codecov-commenter

repo: lambdaclass/cairo-rs-py


text:
Add a log level flag

When running the client without a log level, the default should be info
We should add a flag on the cli to set a custom log level. This should be a global flag.
We should tests this against Kurtosis and Hive. We need changes to the dockerfiles to ensure that we are sending the proper flag when initialing the clients.

Here is the file for Hive: https://github.com/lambdaclass/hive/blob/master/clients/ethereumrust/ethereum_rust.sh
Here is the file for Ethereum package: https://github.com/lambdaclass/ethereum-package/blob/main/src/el/ethereumjs/ethereumjs_launcher.star#L91


text:
Localnet: Failing to build first block

When using a localnet with Kurtosis, if we are chosen to build the first block we fail.
Error message:
ERROR 14:11:03.050 [Validator] Failed to start building payload for slot 1. Reason: No payload id, status is %{"latestValidHash" => nil, "status" => "INVALID", "validationError" => nil}


text:
Add kzg tests

Add more tests for kzg functions
Description
Kzg doesn't have a lot of tests, and batch functions are not tested, this adds tests
Type of change
Please delete options that are not relevant.

[ x ] New feature

Checklist

[ x ] Unit tests added

Codecov Report

Merging #328 (e8d8ada) into main (39fbf75) will increase coverage by 0.02%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #328      +/-   ##
==========================================
+ Coverage   96.32%   96.34%   +0.02%
==========================================
  Files          95       95
  Lines       11785    11859      +74
==========================================
+ Hits        11352    11426      +74
  Misses        433      433

Impacted Files
Coverage Δ

crypto/src/commitments/kzg.rs
99.67% <100.00%> (+0.10%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

authors: MauroToscano codecov-commenter

repo: lambdaclass/lambdaworks


text:
Use common prefix for all options

Summary by CodeRabbit

New Features

Updated the configuration variable for smart editing from g:suda_smart_edit to g:suda#smart_edit for improved clarity.
Enhanced logic for the smart edit feature to accommodate the new variable.
Added commands for reading and writing files using the suda:// protocol.

Documentation

Updated documentation for the suda plugin to reflect the new naming convention and improve clarity.

Unfortunately, g:suda_xxxxx and g:suda#xxxxx are entirely different in Vim, making this change unacceptable.

How different? Could you send me a link to the relevant part of the documentation?

Well, g:suda#xxxx automatically load autoload/suda.vim but g:suda_xxxxx

It is not desired that suda_xxx also automatically loads suda?

No. g:suda_smart_edit is used in plugin/suda.vim and it doesn't need to load autoload/suda.vim

authors: MarcelCoding lambdalisue

repo: lambdalisue/vim-suda


text:
Normalize composer

[QA]

Normalize composer.json and/or update composer.lock

Restructure composer.json according to the underlying JSON schema.
Prevent inconsistencies between all (200+) repositories across all 3 GitHub organizations (laminas, mezzio, and laminas-api-tools).

Please open an RFC with the Technical Steering Committee before creating batched pull requests. This is requested so as to:

Ensure no duplication of effort occurs.
Ensure the changes have been discussed and approved by the TSC.
Ensure there will be maintainers available to review and merge the patches.
Ensure tooling automation is in place to prevent future regressions.

authors: ghostwriter weierophinney


text:
✨ Use Curator for rxrx ingestion

Fixes https://github.com/laminlabs/lamin-spatial/issues/29

Refactors the rxrx-ingest guide to use the Pandas DataFrame curator & simplifies it further
Switches CI to Python 3.12 & reenables docs building CI again

This looks better! :D
Can you please use strikt/ non-hanging indendation?

I suggest we remove everything that's not absolutely necessary for this curation so that it becomes as streamlined as possible. We don't need to show hierarchical ontologies etc.

Today we'd call is_well_type just well_type for simplicity across the docs without tremendous downsides.
But I wonder whether we even still need this? Also, what about the Well registry in wetlab? @sunnyosun

I polished it further and it's ready now. However it does not run on lamindata. See: https://laminlabs.slack.com/archives/C07DB677JF6/p1733739524764029?thread_ts=1733310906.230129&cid=C07DB677JF6

I am merging this now as is and as soon as the notebook runs through with lamindata, I will add a link to the rxrx notebook as discussed.

authors: Zethson falexwolf

repo: laminlabs/lamin-spatial


text:
🛑 rexingsports.cn is down

In d356f96, rexingsports.cn (https://www.rexingsports.cn) was down:

HTTP code: 567
Response time: 863 ms

Resolved: rexingsports.cn is back up in 797e2f7.

repo: lanen/bs-site


text:
🛑 rexingsports.cn is down

In cfe2e9f, rexingsports.cn (https://www.rexingsports.cn) was down:

HTTP code: 567
Response time: 659 ms

Resolved: rexingsports.cn is back up in c197ea0 after 1 hour, 2 minutes.


text:
escape spaces as they are also reserved

lanetix/issues#3582
This will result in a breaking change, so major will be bumped.

@lanetix/engineers

:+1:

Is there a way for this behavior to be optional? I don't see the point in escaping spaces.

Currently I'm doing this:
esSanitize("big brown fox").replace(new RegExp('\ ', 'g'), " ");

which is kind of silly.

authors: Vanuan armw4 pythonesque

repo: lanetix/node-elasticsearch-sanitize


text:
Support for database names with hyphens

It is possible to create a Neo4j database name with hyphens in it - e.g.
CREATE DATABASE `major-minor`
However it is not considered a valid database name if used
graph = Neo4jGraph(url=uri, database=database, username=userName, password=password, refresh_schema=False, sanitize=True)

Can't repro now


text:
Getting invalid output error when using score evaluator

System Info
platform = Windows 11. Linux Ubuntu 22.04
python = 3.10
langchain = 0.0.325
Who can help?
@hwchase17 @agola11 @eyu
When trying to reproduce the example of the Scoring evaluator [https://python.langchain.com/docs/guides/evaluation/string/scoring_eval_chain#usage-without-references] with the next code
evaluator = load_evaluator("labeled_score_string", criteria=criteria, llm=llm, normalize_by=10) eval_result = evaluator.evaluate_strings(prediction="You can find them in the dresser's third drawer.", reference="The socks are in the third drawer in the dresser", input="Where are my socks?")
I'm getting the error ValueError: Invalid output: . Output must contain a double bracketed string                 with the verdict between 1 and 10.
Thanks!!
Information

[X] The official example notebooks/scripts
[X] My own modified scripts

Related Components

[X] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[ ] Output Parsers
[ ] Document Loaders
[ ] Vector Stores / Retrievers
[ ] Memory
[ ] Agents / Agent Executors
[ ] Tools / Toolkits
[X] Chains
[ ] Callbacks/Tracing
[ ] Async

Reproduction
 from langchain.evaluation import load_evaluator
evaluator = load_evaluator("labeled_score_string", criteria=criteria, llm=llm, normalize_by=10)  eval_result = evaluator.evaluate_strings(prediction="You can find them in the dresser's third drawer.", reference="The socks are in the third drawer in the dresser", input="Where are my socks?")
Expected behavior
    {'reasoning': "The assistant's response is helpful, accurate, and directly answers the user's question. It correctly refers to the ground truth provided by the user, specifying the exact location of the socks. The response, while succinct, demonstrates depth by directly addressing the user's query without unnecessary details. Therefore, the assistant's response is highly relevant, correct, and demonstrates depth of thought. \n\nRating: [[10]]", 'score': 10}

Thanks for the answer but, which models are suitable for this kind of evaluators? Only OpenAI models can be used?

@dosu-bot Thanks but I still dont know how to fix my code.

@dosu-bot I'm gettint C:\Users\34609\anaconda3\envs\localGPTl\lib\site-packages\langchain\evaluation\schema.py:128: UserWarning: Ignoring reference in ScoreStringEvalChain, as it is not expected. To use a reference, use the LabeledScoreStringEvalChain instead. (EvaluatorType.LABELED_SCORE_STRING) instead.   warn(self._skip_reference_warning) and the error Please provide your answer evaluation and rating.. Output must contain a double bracketed string                 with the verdict between 1 and 10.

Same problem...

@dosu-bot I've checked that the labeled_score_string evaluator only works with GPT4. Is this functionality going to be updated in order to work with open source LLMs? Thanks again

repo: langchain-ai/langchain


text:
docs: Fix URL formatting in deprecation warnings

Description
Updated the URLs in deprecation warning messages. The URLs were previously written as raw strings and are now formatted to be clickable HTML links.
Example of a broken link in the current API Reference: https://api.python.langchain.com/en/latest/chains/langchain.chains.openai_functions.extraction.create_extraction_chain_pydantic.html

How to preview API Reference changes? I see that Vercel workflow has been cancelled so Visit Preview mentioned in the Contributing docs doesn't work.

@artemmukhin firs time contributors need their PR approved before it'll run and a vercel preview will be generated. Just kicked off the build for you

i dont think vercel will build these docs (since they are the api reference docs, whcih are built elsewhere)

Wow, that's incredibly fast PR processing. Much appreciated!

authors: artemmukhin eyurtsev hwchase17


text:
Dashboards that allows to group by Threads created per day

Feature request
I can create a dashboard with "Runs / day" but couldn't find a way to create a "Threads / day" graph.
Motivation
This is useful to view how many complete interactions are being created per day with our LLM solution.

A group by filter could make the dashboard creations even more flexible.

repo: langchain-ai/langsmith-sdk


text:
Add delete_examples to Client library

Feature request
Currently there is a function called delete_example, which takes in only one example at a time, but for me I want to get rid of all my examples, I've also added a function that would basically do that and will also show details in-case your interested in adding it to the lib:

Motivation
Let's say your working with a big dataset, and you want to use only parts of that dataset at a time, For me, I don't want to have repeat examples going into the same evaluation function, so this eliminates that.

Bulk examples deletion makes sense (we have an API endpoint, just need the SDK sugar), but not for evaluating on a subset of the dataset.
For that you'd just want to pick which examples to evaluate.
https://docs.smith.langchain.com/evaluation/how_to_guides/dataset_subset#evaluate-on-a-filtered-view-of-a-dataset

authors: Joshua-Briggs hinthornw


text:
[FEATURE] Support more Agent and Chain like langchain python edition

as we know, the langchain official python edition, has many types of AgentType and ChainType, which can provide multi choice for users

@Jashinck please be more specific and provide a prioritized list of agents/chains, thanks

High priority:
Common Chains: LLMChain、SequentialChain、RouterChain
Agent Type:  zero-shot-react-description, conversational-react-description, structured-chat-zero-shot-react-description

Official document - https://python.langchain.com/docs/modules/chains/foundational/sequential_chains

LLMChain: there are many ways to do it already: PromptTemplate + ChatLanguageModel, AiServices, etc
SequentialChain: I doubt there sohuld be a separate abstraction for that, you can simply call multiple components in a row
RouterChain: good idea, I have created a separate issue for this: https://github.com/langchain4j/langchain4j/issues/952
Agents: there is another issue for this, please track it there: https://github.com/langchain4j/langchain4j/issues/193

authors: Jashinck kevin-wu-os langchain4j


text:
install eos_mgusup.hpp

eos/eos_mgusup.hpp is missing from install

Thanks.  It's ready!

repo: lanl/singularity-eos


text:
Add search function

Add search function

https://blog.csdn.net/liudao7994/article/details/80455321

可以试下

可以试下 我自测通过了

repo: laobie/FindViewByMe


text:
Verify whether the package works on each platform

package can run without missing dependency
service can start and SSL connection can establish

https://github.com/laoshanxi/app-mesh/commit/bbb16de5e74ca4c9497c442d3c1158c14b8dd52e

repo: laoshanxi/app-mesh


text:
Allow resizing panel splits

When you have multiple panels split on one side, it would be nice if you could resize them to proportions that you desire.

Fixed via https://github.com/lapce/lapce/pull/948

authors: MinusGix panekj

repo: lapce/lapce


text:
Fix prev_boundary function

Resolve #778. It appeared that prev_boundary() was not working as expected. It makes sense to check also for the WordProperty::End, which can be done using is_boundary().  I also had to change classify_boundary() since (Lf, Space) is more likely to be the Start.
This is the first OpenSource contribution in my life! Please review and let me know what you think, thank you!

Thanks for your contribution, especially your very first one!
The CI is complaining in tests. You might need to change the tests as well.

Well, I dig a bit deeper and it does not look that simple. The tests look perfectly fine, though I think about adding some more. I would like to continue working on this issue

This seems to be already fixed by #1294

authors: Vovanoxin dzhou121 panekj


text:
This preset changes the default colors of tailwindcss

after I nearly completed the design of the website, I installed this preset then I found that my website became ugly, I can't go to every blade file and change the colors, any fixes?

Hey, two important things to note here:

I wouldn't add the preset to an existing project; it's used to scaffold out a new project
The preset uses the @tailwindcss/ui plugin, which overrides the 1.x defaults in preparation for the next major Tailwind version.

You can remove the plugin and recompile your assets.

repo: laravel-frontend-presets/tailwindcss


text:
Fix bug with resource_path function

On version 5.1 Laravel get the error "Call to undefined function Illuminate\Notifications\resource_path()";

Great, thank you!

authors: enniel mpociot

repo: laravel-notification-channels/backport


text:
[7.0] Bug solution for Issue #476

Now retrieve an invoice with ALL line items:
As per Stripe API documentation, when retrieving an invoice, you only retrieve "the first handful of those items", referring to the line items. Currently, the "findInvoice" method of the Billable only retrieves the invoice without retrieving all the lines. Therefore, when bills are generated, we get lots of missing lines and therefore it's impossible to check by our customers if their bill is OK.
This pull request solves this problem by simply retrieving up to 1000 lines of the invoice and replacing the lines object of the original invoice.

Hi!
Thanks for your answer. No, definitely it's not needed 1000, it was only to make sure that we get all of them.
Our case is that we run with "seats". So, in Stripe we just have 2 plans and we multiply the amount of the plan per the number of "seats". So every change in this number creates two lines.
For the moment the maximum number of lines we had in an invoice was about 50. So I think that 100 would be OK but if this could be something we can adjust, for instance with a parameter, it would be nice.
Thanks for your time!

Great!
Thank you all for your help!

repo: laravel/cashier


text:
authenticate() method missing from guard contract.

Laravel Version: 5.3.6

Description:
The Authenticate middleware checks if the user is authenticated in any of the given guards. It does so by calling authenticate() on the AuthManager. The authenticate() method doesn't exist on this class and will pass it through to the default Guard configured in the auth.php config.
When creating new Guards the first place to look are the Guard and StatefulGuard contracts to determine what methods are required. The authenticate() method isn't listed in either resulting in a Call to undefined method exception when you don't include it.
Since this method is called by default in a new laravel installations (the auth middleware) this method should either be included in one of the contracts or the Authenticate middleware shouldn't call the authenticate() method in the first place.
The StatefulGuard uses the GuardHelpers trait to supply the authenticate method.
Steps To Reproduce:
Create a custom Guard and remove the authenticate method. Make sure you don't use the GuardHelpers trait. ;)

Well, you need to implement the GuardHelpers interface then :)
If you have time please consider making a docs PR for that. Thanks for sharing :)

@themsaid It's a trait not an interface. :o
For my use case this isn't really a solution, I don't need most of the methods the way they are implemented and would overload them because of that. Also the Auth component checks for the interfaces/contracts and not for this specific 'helpers' trait.
Therefore my problem remains the same, the Auth component expects methods not defined in an interface, on instances that can be interchanged.

authors: kevindierkx themsaid

repo: laravel/framework


text:
makeWith or make does not return mocked object when testing

Laravel Version: 5.6.29
PHP Version: 7.2.7

Description:
The service container does not resolve the mocked object when using the makeWith method with parameters. It does work when using the make method without parameters, but neither does when using parameters.
Steps To Reproduce:

In the test bind a mock: $this->app->bind('App\Model\User', \Mockery::mock('App\Model\User'));
Resolve the App\Model\User with the resolve helper or make method without using parameters. This will return the mock which is ok.
Resolve the App\Model\User with makeWith or make for example: $this->app->makeWith('App\Model\User', ['name' => 'JValck']); This will return the actual implementation instead of the mock.

https://github.com/laravel/framework/issues/19450 https://github.com/laravel/framework/issues/25041


text:
[5.7] Model::firstOrCreate Integrity constraint violation

Laravel Version: 5.7.26
PHP Version: 7.1.15
Database Driver & Version: sqlite 3.11

Description:
When using an sqlite database, Model::firstOrCreate can't find an existing model and tries to create another one. This happens when it searches for a date attribute that is in the $casts array.
The example code below fails when using an Sqlite database, but works correctly using a Mysql database.
Steps To Reproduce:
Migration:
Schema::create('example_models', function (Blueprint $table) {
    $table->increments('id');
    $table->date('date')->unique();
    $table->timestamps();
});

Model:
class ExampleModel extends Model
{
    protected $guarded = [];

    protected $casts = [
        // if you comment out the cast it works correctly
        'date' => 'date',
    ];
}

then call the method twice:
ExampleModel::firstOrCreate(['date' => now()->format('Y-m-d')]);

ExampleModel::firstOrCreate(['date' => now()->format('Y-m-d')]);

Will throw a SQLSTATE[23000]: Integrity constraint violation: 19 UNIQUE constraint failed exception, because the second firstOrCreate somehow can't find the model and tries to create another one.

SQLite has no dedicated column type for dates, it just stores the values as text:

Without date cast: 2019-02-16
With date cast: 2019-02-16 00:00:00

So the latter case doesn't work because the second firstOrCreate() can't find the existing record when querying where date='2019-02-16'.
This works on MySQL and SQLite:
ExampleModel::firstOrCreate(['date' => now()->startOfDay()]);

ExampleModel::firstOrCreate(['date' => now()->startOfDay()]);

Please the answer by @staudenmeir

authors: SjorsO driesvints staudenmeir


text:
Use json_encode options in Response Json

json_encode have $options argument, but it can't use with Response::json(). It can use only manual without using Reponse class. Is there any plan for use $options with Response::json function?

Hello,
any news on this ?
there is no proper way to set the JSON_FORCE_OBJECT flag it seems
i could decode the response, and re-encode with the flag i need, but it's not really clean.


text:
eloquent casting

Laravel Version
10.8
PHP Version
8.1
Database Driver & Version
No response
Description
eloquent cast is  is :
<?php

namespace App\Models;

use Illuminate\Contracts\Database\Eloquent\CastsAttributes;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Carbon;
class FakeCast implements CastsAttributes
{

    public function get(Model $model, string $key, mixed $value, array $attributes): ?Carbon
    {
        if ($value == null) {
            return $value;
        }
        echo 'get:'.$key.'-'.$value.'
';

        return Carbon::parse($value)->shiftTimezone('UTC')->setTimezone(config('app.timezone', 'UTC'));
    }

    public function set(Model $model, string $key, mixed $value, array $attributes): ?string
    {
        echo 'set:'.$key.'-'.$value.'
';

        return Carbon::createFromFormat('Y-m-d H:i:s', $value)->shiftTimezone(config('app.timezone', 'UTC'))->setTimezone('UTC')->toDateTimeString() ?? null;
    }

}

model user is :
<?php

namespace App\Models;

// use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Sanctum\HasApiTokens;

class User extends Authenticatable
{
    use HasApiTokens, HasFactory, Notifiable;

    protected $table = 'admins';
    protected $fillable = ['id','created_at','first_name','last_name'];

    protected $casts = [
        'created_at' => FakeCast::class
    ];
}

Testing the problem:
Route::get('/', function () {
    $user = \App\Models\User::find(1);
    echo $user->created_at;

    $user->first_name;
    $user->last_name;
    $user->last_name;
    $user->last_name;
    $user->last_name;
    $user->last_name;
    $user->last_name;
    $user->last_name;
    $user->last_name;

    return null;
});

Result above code :
get:created_at-2023-04-27 12:46:30
2023-04-27 12:46:30set:created_at-2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30

Every time the model is called, all instances column casting are recreated.
This code has been tested on Raw Laravel and there is no other dependency except the above codes
Steps To Reproduce
laravel new bug-report --github="--public".

Thanks. This is the expected behavior.

Inside our code, we call ID
But other columns are built
is it correct ?!
```
$user = \App\Models\User::find(1);
echo $user->created_at.'';
echo '------'.'';
$sumIds = $user->id + $user->id;

result :

get:created_at-2023-04-27 12:46:30
2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30
set:created_at-2023-04-27 12:46:30

Thank you. Right now we have no reason to believe this is functionally incorrectly. If you can, please provide us with a PR with a failing test that proves the current functionality of cast cache is broken. Thanks

@driesvints
public function set(Model $model, string $key, mixed $value, array $attributes): ?Carbon
    {
        return Carbon::createFromFormat('Y-m-d H:i:s', $value)->shiftTimezone(config('app.timezone', 'UTC'))->setTimezone('UTC') ?? null;
    }

Inside this code, because the time zone change happens from the reference
After being set several times, sometimes it became 3 to 5 times (the number of cache clearing times).
Example :
2023-05-31 11:33:40 +3:30
It would become:
2023-05-31 01:33:40 :00:00
This problem exists for cassettes.

authors: driesvints m-derakhshi mderakhshi


text:
[5.2] Index bindings by clause key to facilitate binding removal

Index bindings by the key for the corresponding query clause, and add functions to
remove clauses and/or binding.
This will simplify removing global scope(s) with binding(s), and make it more robust

You broke the build too.

Thanks for the comments @GrahamCampbell
I've discovered the StyleCI and will fix it accordingly.

Fixed the coding style, but made a couple more mistakes on the way. Shall I bundle the changes in another branch and redo the pull request?

Sure, please re-do the PR.

authors: Feijs GrahamCampbell taylorotwell


text:
Fix pagination when using distinct

fixes #21242
if distinct is being used in the query, then it will count the models primary key rather than * to avoid counting the same row multiple times and generating links to pages which dont exist

@sisve replying here because i messed up my branch in the other pr, maybe i missed something but it looks like laravel is already going to wrap those columns when it builds the query.
this change makes eloquent->paginate count the same as doing something like DB::table('users')->paginate(15, 'users.id');

No plans to change this on 5.5.

authors: rs-sliske taylorotwell


text:
[5.6] Fix missing strtolower when getting an SQL alias

This prevents AS in caps causing an undefined offset

I don't want to make this change on 5.6 as it could break UTF-8 table names, etc. Just pass lower case as for now.

authors: sean-ww taylorotwell


text:
[5.6] Adds before, after and dateEquals to Illuminate\Validation\Rule

Allows for the easier creation of dynamic/relative date rules for date before, after and equals validation using DateTime instances through Illuminate\Validation\Rule.
I know strtotime() can handle relative dates quite well but I much prefer using Carbon to handle this myself, this also makes it easier if you already have a Carbon/DateTime instance and you want to produce a relative value from that instance.
$this->validate($request, [
    'scheduled_for' => Rule::dateEquals(now()->addWeek()->startOfDay()),
]);

$this->validate($request, [
    'scheduled_for' => Rule::before(now()->addWeek()->startOfDay()),
]);

 $this->validate($request, [
    'scheduled_for' => Rule::before(now()->addWeek()->startOfDay())->orEqual(),
]);

$this->validate($request, [
    'scheduled_for' => Rule::after(now()->subWeek()->endOfDay()),
]);

$this->validate($request, [
    'scheduled_for' => Rule::after(now()->subWeek()->endOfDay())->orEqual(),
]);

Almost all of the doc blocks don't match the formatting of the rest of the framework.

@taylorotwell  If I fixed the doc blocks would it then be fine?

@peterfox if this doesn't get in, this functionality is in my Rule builder package: https://github.com/timacdonald/rule-builder#carbon-with-date-rules

authors: peterfox taylorotwell timacdonald


text:
[5.8] eachById()

eachById() is a more efficient alternative to each(), just like chunkById() is to chunk().
I really liked to call each() but not being skip-take based makes its runtime complexity quadratic.
I also wish chunk() and each() would do id based by default. Because, in my opinion, they reserve better names but they do worse.
This PR is not complete yet. Regard it as just an idea.

Why is the PR not complete?

I have not tested it. Besides I find later that chunkById have different default values for column in the 2 builder classes. So maybe there should be 2 functions implemented in 2 classes instead of one in a trait.

@taylorotwell I force-pushed a commit. This now refactors chunkById() to prevent duplicate code both in chunkById() and eachById().
I think I have to close it anyway because of conflict. I will open another one.

authors: halaei taylorotwell


text:
[6.0] Use Lang::trans() instead Lang::get()

trans is the original method of Translator interface while get is not (only exists on the current implementation). Use trans is safer and clearer.
For Example, if I build a package including implementation of TranslatorInterface but not define get, then rebind 'translator' in the container, the code will go wrong.
This is similar to fire from Event Dispatcher. https://github.com/laravel/framework/pull/26379

I don't like that method name. Personally I think the interface should be updated.

authors: taylorotwell xuanquynh


text:
[8.x] Adds --test and --pest options to various make commands

Howdy all!
Hot off the back of #38966, this PR adds a new, simple method of adding matching tests to various GeneratorCommands in the framework, such as make:model, make:controller and make:job.
Usage
To generate a matching test, simply use the --test option for PhpUnit or --pest for Pest PHP. The test will be placed in the tests folder under the same directory structure as the generated class. For example,
php artisan make:model Product --test

will create a PhpUnit test at tests/Feature/Models/ProductTest.php.
php artisan make:job Shop/ProcessSales --pest

will create a Pest test at tests/Feature/Jobs/Shop/ProcessSalesTest.php
Adding to custom/additional commands
If you want to add this functionality to a custom command, it's as easy as adding the CreatesMatchingTest trait to any command that extends GeneratorCommand.
Currently, I've added this functionality to the following commands:

make:command
make:job
make:listener
make:mail
make:model
make:notification
make:controller
make:middleware

The benefit of generating tests this way is being able to quickly create a clean, matching folder structure, which many test suites end up lacking due to inconsistencies.
Let me know if there are other commands you think should have this functionality.
As always, thank you for all your hard work.
Kind Regards,
Luke

if it creates tests/Models/ProductTest.php wouldn't it make more sense to go into the unit test folder instead of the test folder?

@peterfox by default, tests generated in the unit folder don't boot the Laravel app as they extend a different testcase. In most of my model tests, I'd want to be hitting the database to make sure I've set up relationships correctly, so I'd need it to be a feature test.

@lukeraymonddowning sure that makes sense. That might be the only drawback I can see to this PR is it's very custom. Such as for me I probably would want a unit test for a lot of things over a feature test. Equally I'm not a fan of feature tests being structured by class namespace. Not saying it's wrong, just a personal preference. I'm wondering if there's a better syntax rather than just --test to accommodate that or not.

I am not a big fan of the folder structure either, but could get used to it. Another alternative could be to create the file as Feature/ProductModelTest.php, Feature/OrderListenerTest.php etc. That way it is obvious what where testing while keeping the folder structure flat.

I think it would make more sense to put the tests in the unit/feature folder depending on the test. Controller tests goes in the feature folder, and most else goes in the unit folder.
I agree with @lukeraymonddowning that you probably want to touch the DB when testing a model, and that by default, that scaffold does not boot the app. It is however fixable by changing the stub file.
I really hope this gets merged. I have written a package to solve this exact problem, would be awesome seeing it in core!
https://github.com/iak/make-testable

authors: haheap iaK lukeraymonddowning peterfox


text:
[11.x] Implement HasV7Uuids to use with MariaDB native uuid data type

This PR addresses issue #51883. The referenced issue points out that the uuid data type in MariaDB has problems with orderedUuid, which is used by the HasUuid trait.
MariaDB's documentation suggests using uuid1 or UUID versions >= 6 as a better option.
With this PR, Laravel developers can better utilize their MariaDB UUID columns in terms of performance, indexing, ordering, and storage. Using UUID v7 instead of the ordered UUID v4 currently used by Laravel will:

Fix the incorrect order bug in MariaDB.
Improve performance during insertion.
Align with the standard method of ordering UUIDs by using a truly ordered UUID version instead of simulating one.

Additionally, this PR introduces a new uuid7 helper method in Str.
If this PR is merged, necessary edits to the documentation will be required to guide users on using this trait with MariaDB instead of HasUuid.

I think this could be solved on attribute casts level

I think this could be solved on attribute casts level

@antonkomarev can you please give example on how to do this? I tried to make something like the old HasUuid implementation

As discussed in #51883, this PR is then also the base for our plan to switch the HasUuid trait to UUID v7 by default  in Laravel 12. This is related to the reverted #44210 but would address its privacy concerns.

authors: Karem-sobhy antonkomarev staudenmeir


text:
[11.x] URL Encoding email for Password Reset link.

Currently if there is a "+" symbol in the password reset link, the functionality no longer works as the email field in the search params is invalid.
Fixed by URL encoding the link in the resetUrl() function in the ResetPassword Notification.

Doesn't seems this change is correct sorry

authors: ScottJohansen driesvints


text:
Casting Nullable Fields

Extension to #6782 Casting Of Eloquent Attributes To Native Types
This has already been suggested by @rwillians in this feature request #7507 before I was ready to make this pull request.
I was talking to someone in the laravel-dev IRC channel on Tuesday and they were upset at my thoughts to modify it to automatically pass null back on any field as it would break backwards compatibility. To avoid these issues I added these extra types int|null, integer|null, real|null, float|null, double|null and string|null which coincidentally is what @barryvdh was suggesting.
Usage:
protected $casts = [
    'nullable_int_field' => 'int|null',
    'nullable_float_field' => 'float|null',
    'nullable_string_field' => 'string|null',
];

Hey @mattwells, nice work.
May I suggest using something like this:
protected function castAttribute($key, $value)
{
	if (strpos($key, '|null')) {
		if (is_null($value)) {
			return $value;
		}

		$key = str_replace('|null', '', $key);
	}

	switch ($this->getCastType($key))
	{
		case 'int':
		case 'integer':
			return (int) $value;
		case 'real':
		case 'float':
		case 'double':
			return (float) $value;
		case 'string':
			return (string) $value;
		case 'bool':
		case 'boolean':
			return (bool) $value;
		case 'object':
			return json_decode($value);
		case 'array':
		case 'json':
			return json_decode($value, true);
		default:
			return $value;
	}
}

This way you won't need to overcomplicate the switch. Actually you won't need to change anything on the switch.
Down side of this example is that we're are only expecting the null flag after the type. Not sure if it would be a problem.

Hey @mattwells!
It's a nice alternative, but you overcomplicated the switch.
What do you think about using this:
protected function castAttribute($key, $value)
{
    $castType = $this->getCastType($key);

    if (strpos($castType, '|null')) {
	    if (is_null($value)) {
		    return $value;
	    }
	    $castType = str_replace('|null', '', $key);
    }

    switch ($castType)
    {
        case 'int':
        case 'integer':
			return (int) $value;
        case 'real':
        case 'float':
        case 'double':
			return (float) $value;
        case 'string':
			return (string) $value;
        case 'bool':
        case 'boolean':
            return (bool) $value;
        case 'object':
            return json_decode($value);
        case 'array':
        case 'json':
            return json_decode($value, true);
        default:
            return $value;
    }
}

I'm also not sure if assuming the null flag will always be after the type would be a problem.

Hi @rwillians ,
I had consider doing something like you had suggested but I felt that for a method that could easily be called hundreds of times doing pattern matching might be best avoided. Also as @Arrilot pointed out it only makes sense to be applied to int, float and string types. Your suggestion would not be limited to just those types.
I am actually looking over the original pull request adding to add this feature and I have just seen a https://github.com/laravel/framework/pull/6782#issuecomment-68056227 (by @JosephSilber) suggesting using castTo*() methods, shame that @GrahamCampbell felt that Tylor might think it would be to magic, sounds like a really useful mechanism.

@mattwells, I believe you misunderstood @Arrilot about the types. In his first comment on #7507 he says:

I have some points here:

The change should be done for all types, not only int, float and string.
[...]

Anyway, I've just read #6782 and @JosephSilber's castTo* indeed seams a great mechanism! If we could use castTo* to override default cast types (int,  float, string ...) it would also help handling nullable fields since each user could handle it in their own way.
In some level I agree with @GrahamCampbell about being quite "magic", but it seems to me the must extensible solution.

You are right I did miss read his comment. I will fix that now.

@rwillians I have just done a very quick bit of profiling with the difference between using strpos() and just adding extra switch options is almost unnoticeable looping through the code 100k times. I think I will go for your solution as I agree it is a much neater solution.

@mattwells nice!
Do you think always expecting null only as second parameter would be a problem? I mean, what if someone try to use something like null|integer? I know the switch will use the default case, but do you think we should handle this scenario too?

I think this is getting stupidly hacky. We should just change the behaviour in 5.1 to allow null and be done with it.

IMO we should never cast null values.

@taylorotwell but what do you think about allowing values to be null, like proposed in #7507? Because only casting them is changing null values to zero or empty which IMO is not the expected behavior.

Yes that PR is a better solution IMO.

authors: GrahamCampbell mattwells rwillians taylorotwell


text:
[5.1] Use corresponding classes instead of helpers in Auth

Replaced view and redirect helpers in the Auth module with the corresponding facades, following #9273, #9370 and the likes. IMO all of these helper calls should be removed from Laravel core itself – helpers are for users.

You also changed other things in this PR at the same time. Please don't do that.

Yeah, I changed \Illuminate\Http\Response to \Illuminate\View\View where applicable, which is bad. The Request changes though, I've no idea why. Anyway, the PR is rejected – will do better next time!

IMO all of these helper calls should be removed from Laravel core itself – helpers are for users.

I agree here, apart from in these cases. It's fine to use facades and helpers inside traits that the user is going to dump into their code.

It's fine to use facades and helpers inside traits that the user is going to dump into their code.

IMO it would be much appreciated that, as the project's owner and collaborators, you guys somehow make this clear to contributors so that everyone can contribute properly. Heck, make it a rule if need be! I, for one, was really confused about where to use helpers and/or facades.

authors: GrahamCampbell phanan


text:
Entity prioritization in regions

Before implementing this completely I need be sure of it's implications on the current design of the region system and performance.
I might just add a flag to "luna.toml" that lets the user choose if they want to turn it on or off (smaller servers can leave it off, while larger servers might require it).

I'm going to add the feature but just leave a "toggle" for it, as shown in 5149f9f9e4c63e85ec17dfa7bf7255c1b97d547d

Actually gonna keep this open until the prioritisation itself is completed

Blocked by #17

fixed in 8c7e4b8e6df8952a6c070c8454951115c330ae51


text:
Parsing context-free grammar with smart interplay between lexer and parser

I'd like to parse inputs like
equations 3
a=7
b=a*c
c=exp(-1)

which are generated by a context-sensitive grammar (because of the 3 giving the number of equations to follow).
Is there a way to parse such a grammar using an interplay between lexer and parser in Lark, preferably in a "fast" way, e.g. using LARL.
Early kind of works but is painfully - and understandibly - slow and needs to be painstakingly tweaked to most of the time yield the desired parse tree from the ambiguous grammar.

The example might not have been the best but there are instances where without knowing the number of ... (this extends to other "blocks" than equations) you cannot reliably determine where the next block starts.

repo: lark-parser/lark


text:
Lark Transformer doesn't transform keyword tokens no matter what I do.

from lark import Lark, Transformer

# Implementation based upon:
# https://www.sciencedirect.com/science/article/pii/0167642395000216
# i.e.
# "An algorithm for type-checking dependent types"
# by Thierry Coquand

class Exp:
    def __repr__(self) -> str:
        raise NotImplementedError

    def free_vars(self) -> set:
        raise NotImplementedError

class Keyword(Exp):
    def __init__(self, keyw):
        super().__init__()
        self._keyw = keyw

    def __repr__(self) -> str:
        return self._keywd

    def free_vars(self) -> set:
        return set()

class Ide(Exp):
    def __init__(self, string:str):
        super().__init__()
        self._string = string

    def __repr__(self) -> str:
        return self._string

    def free_vars(self) -> set:
        return set([self])

    # Equality & Hash defined so that FV set differencing works, for example.
    def __eq__(self, x:Exp) -> bool:
        return repr(self) == repr(x)

    def __hash__(self) -> int:
        return hash(repr(self))

class LambdaAbstr(Exp):
    def __init__(self, x:Ide, M:Exp):
        self._var = x
        self._body = M

    @property
    def var(self) -> Ide:
        return self._var

    @property
    def body(self) -> Exp:
        return self._body

    def __repr__(self) -> str:
        return 'λ' + str(self.var) + ' ' + str(self.body)

    def free_vars(self) -> set:
        FV = self.body.free_vars()
        FV.difference_update(self.var.free_vars())
        return FV

class Application(Exp):
    def __init__(self, func:Exp, arg:Exp):
        super().__init__()
        self._func = func
        self._arg = arg

    @property
    def func(self) -> Exp:
        return self._func

    @property
    def arg(self) -> Exp:
        return self._arg

    def __repr__(self) -> str:
        return str(self.func) + ' ' + str(self.arg)

    def free_vars(self) -> set:
        FV = self.arg.free_vars()
        FV.update(self.func.free_vars())
        return FV

class Typing(Exp):
    def __init__(self, x:Ide, M:Exp):
        super().__init__()
        self._var = x
        self._type = M

    @property
    def var(self) -> Ide:
        return self._var

    @property
    def type(self) -> Exp:
        return self._type

    def __repr__(self) -> str:
        return str(self.var) + ':' + str(self.type)

    def free_vars(self) -> set:
        FV = self.var.free_vars()
        FV.update(self.type.free_vars())
        return FV

class DependentType(Exp):
    def __init__(self, typing:Typing, body:Exp):
        super().__init__()
        self._typing = typing
        self._body = body

    @property
    def typing(self) -> Typing:
        return self._typing

    @property
    def body(self) -> Exp:
        return self._body

    def __repr__(self) -> str:
        return "(" + str(self.typing) + ")" + str(self.body)

    def free_vars(self) -> set:
        FV = self.typing.free_vars()
        FV.update(self.body.free_vars())
        return FV

type_theory_grammar = r"""
    ?start: exp
    ?exp: keyw
       | ide
       | abstr
       | app
       | dep_type
    dep_type: "(" typing ")" exp
    typing: ide ":" exp
    app: exp " " exp
    abstr: "λ" ide " " exp
    !keyw: "Type"    -> type_kw
    ide: IDE
    %import common.CNAME -> IDE
    %import common.WS_INLINE
    %ignore WS_INLINE
"""

class TypeTheoryTransformer(Transformer):
    def ide(self, seq):
        return Ide(str(seq[0]))

    def abstr(self, seq):
        return LambdaAbstr(seq[0], seq[1])

    def app(self, seq):
        return Application(seq[0], seq[1])

    def typing(self, seq):
        return Typing(seq[0], seq[1])

    def dep_type(self, seq):
        return DependentType(seq[0], seq[1])

    def type_kw(self, seq):
        return Keyword("Type")

### Create the parser with Lark, using the Earley algorithm
type_theory_parser = Lark(type_theory_grammar, parser='earley')

if __name__ == '__main__':
    while True:
        s = input("> ")
        tree = type_theory_parser.parse(s)
        xformer = TypeTheoryTransformer()
        exp = xformer.transform(tree)
        FV = exp.free_vars()
        print(tree)
        print(FV)

Run that code.  Type in "Type" I can't get "Type" to be printed which is 1repr(Keyword("Type"))1 in other words the transformer never replaces the Token() struct with what I've returned.  I've tried several obvious things out.
I think this has to be a bug, but since keywords are ubiquitous how can I work around it?

This is so frustrating that I'm not only changing parsing libraries, but languages.  Since all parsing libraries in Python apparently are broken.

You are not doing the correct thing. Transformer returns the changed result, and doesn't modify the original Tree. And tree and exp are different variables, so print(exp) instead of print(tree), works, except your type in Keyword.__repr__

@enjoysmath If there's a bug, prove it with a minimal example and I'll fix it within a few days, like I do for every interface bug.

authors: MegaIng enjoysmath erezsh


text:
UI router refactoring, secondary event experiments

Following from #338

This is what I mean for secondiry event.
Benefits: pages do not know anything about each other (just about actions) and navigation can be done at upper level.
There is a space for improvement - maybe don't pass objects with event, instead page should expose some kind of get_state which will be called from router (to sender of event).

@larshp  if this code does not look to crazy I'll fix page_merge in the similar way and PR.

hmm, IMHO, following
    mo_repo->push( is_comment = ls_comment
                   io_stage   = mo_stage ).

is easier to maintain, as it uses typed objects to call a method
        RAISE EVENT lif_gui_page~queue
          EXPORTING
            action = gc_action-git_commit
            obj1   = mo_repo
            obj2   = mo_stage
            tab1   = it_postdata.

accepts everything as it imports objects. So to trigger the action I would have to look up the code to see what it does, compared to calling a method with typed objects.
Can you explain about the benefits you see with this setup?

off cause it makes gc_action-git_commit reusable across pages, but is it needed?
From my point of view the method commit(lcl_services_git) is already reusable across pages?
CLASS-METHODS commit
      IMPORTING io_repo     TYPE REF TO lcl_repo_online
                is_postdata TYPE ty_commit_fields
                io_stage    TYPE REF TO lcl_stage
      RAISING   lcx_exception lcx_cancel.

(can we rename is_postdata to is_commit in the above)

Perhaps you're right. I wanted to achieve the state when pages don't know about each other and about how "global" actions are performed (some kind of flux concept). But since the state is inside the page it is not that natural. Unnamed params do not look good, I agree. I can change it so that payload is a structure with named params. But still the sending page should know about the structure for the receiving page which fails my goal. Perhaps this is the router who should extract the state ... which means ideally that the state should be outside of a page. Maybe that's the way to go ... somewhen.
So I think for now I'll remove that 2ndary event code and just keep services-commit and then PR.

yeah, its difficult stuff. I'm afraid that if having the state outside of the page will result in having a set of semi-global variables

ok, create a PR with commit improvements only.
One side question: why lcl_stage does not have a reference to it's repo ? Can it exist without repo context ?

"! keep the list of staged files, independent of repository and branch

not sure :smile:
this code smells like it could just accept io_repo in its constructor
    CREATE OBJECT mo_stage
      EXPORTING
        iv_branch_name = io_repo->get_branch_name( )
        iv_branch_sha1 = io_repo->get_sha1_remote( ).

looks like it would also make it easier to call the commit page, just passing mo_stage (assuming it has a reference to the repo)
    CREATE OBJECT ei_page TYPE lcl_gui_page_commit
      EXPORTING
        io_repo  = mo_repo
        io_stage = mo_stage.

Yeap, that's what I had in mind :)
P.S. Closing this issue now

authors: larshp sbcgua

repo: larshp/abapGit