Perl每周挑战272:Defang IP地址

以下是对第272周任务1的一些回答Perl每周挑战由组织穆罕默德·安瓦尔.

扰流板警报:这周的挑战截止日期将在几天后到期(2024年6月9日23:59)。这篇博客文章为这一挑战提供了一些解决方案。如果你打算独自完成挑战,请不要继续阅读。

任务1:定义IP地址

您获得了有效的IPv4地址。

编写一个脚本以返回给定IP地址的更改版本。

更改后的IP地址将每个句点“.”替换为“[.]”。

示例1

输入:$ip=“1.1.1.1”输出:“1[.]1[.]1[..]1”

示例2

输入:$ip=“255.101.1.0”输出:“255[.]101[.]1[.]0”

这是我第一次听说IP地址可以“更改”

Raku的Defang IP地址

本周PSC(149)| 2024-05-30

本周只有保罗和菲利普;我们讨论了最后的更改对于即将到来的RC2和稳定版本,并将一些问题/PR标记为释放阻滞剂。

Graham预计在本周之前发布5.40-RC2。

2024年里斯本Perl工具链峰会

去年在里昂举行的Perl工具链峰会(PTS)上,我留下了三个请求草稿:一个是关于Perl 5.37中引入的类声明,一个是有关docker上的PAUSE,还有一个是涉及多因素身份验证。我想重新梳理一下,并请安德烈亚斯·科尼合并一些,但今年我应该优先考虑哪一个?

MariaDB 10和SQL::Translator::Producer

继我上一篇文章(MariaDB10和PerlDBIx::Class::Schema::Loader)之后,我想尝试使用“部署”功能从Schema/Result类创建数据库表。

我很惊讶,当时间戳字段的默认值为current_time()时,我无法在数据库中创建表。问题是生成的CREATE TABLE条目在“current_timestamp()”周围加了引号,导致错误并拒绝条目。

如前一篇文章中所述,我创建了文件SQL/Translator/Producer/MariDB.pm,作为让MariaDB10客户端与DBIx::Class::Schema::Loader正确工作的一部分。最初,它是MySQL.pm文件的克隆,带有名称替换。为了纠正current_timestamp问题,我在MariaDB.pm文件中现有的create_field子例程中添加了搜索/替换,以删除引号。

Perl每周挑战271:按1位排序

以下是对第271周任务2的一些回答Perl每周挑战由组织穆罕默德·安瓦尔.

扰流板警报:这周的挑战截止日期将在几天后到期(2024年6月2日23:59)。这篇博客文章为这一挑战提供了一些解决方案。如果你打算独自完成挑战,请不要继续阅读。

任务2:按1位排序

给你一个整数数组,@整数.

编写一个脚本,按照二进制表示中1位的数目对整数进行升序排序。如果多个整数具有相同数量的1位,则按升序排序。

示例1

本周PSC(148)| 2024-05-16

预计稳定发布,我们:

  • 恢复了“HTTPS现成”项目:CPAN安全小组承诺帮助我们选择一个可行的解决方案,目标是在Perl 5.42中及时实现它
  • 讨论了下一个稳定版本的细节
  • 决定于2024-05-24(周五)进行

确认LPW 2024地点和日期

我们很高兴确认今年伦敦Perl&Raku研讨会的地点和日期。

什么时候:2024年10月26日星期六
哪里:伦敦老街239号Trampery EC1V 9EY

今年的研讨会将在老街的Trampery举行。位于伦敦市中心的专用现代活动空间。我们同时雇佣了舞厅和图书馆;让我们可以为多达160名与会者运行一条主赛道,为多达35名与会者运行第二条较小的赛道。

Old Street的Trampery距离伦敦市中心的Northern Line Old Street地铁站步行两分钟。北线在伦敦的大多数主要火车站都有停靠站,或者与其他火车站的联系很小,因此我们建议乘坐地铁前往会场。

如果您还没有,请注册并使用官方研讨会网站提交演讲:https://act.yapc.eu/lpw2024/

感谢今年的赞助商,没有他们LPW就不会发生:

如果您想赞助LPW,请查看以下选项:https://act.yapc.eu/lpw2024/sponsoring.html

如果愤怒会让前Paella难住我们,那就做一个超级Cal

我不擅长的东西

看着锅里烧焦的残骸,我心里想,海鲜饭可能是有史以来最糟糕的民族菜肴了。就好像某个古代西班牙征服者在海外征服归来,感到饥饿和没有成就感时,做梦把拜里安尼带到西班牙,但在掠夺的过程中忘记了记录烹饪笔记。

“何塞,这有多困难?”疲惫的战士沉思着,
“是的,是的,只是米饭和肉,innit”,来自西班牙伯明翰的加泰罗尼亚同事说道。
“我们可以用一些无味、无定形、耐嚼的东西,比如贻贝,而不是肉”,
“哇,很好,”,
“还有语言……”,
“什么?”,
“我知道,对吧?把它们都扔进去,别费心炮轰它们”,
“拉斐尔有一些西红柿,他不需要扔给路过的行人”,
“啊……味道”,当他们烹调的混合物的味道让人想起遥远的燃烧着的村庄时,火上浇油。

MariaDB 10和Perl DBIx::Class::Schema::Loader

修复用于MariaDB 10客户端软件的DBIx::Class::Schema::Loader

我最近设置了一个运行Rocky Linux 9的虚拟服务器作为客户端,从中查询远程MariaDB数据库。我使用perlbrew安装Perl 5.38.2。我为MariaDB 10.5安装了与客户端相关的RPM,我安装了DBIx::Class作为关系映射器,可以为数据库中的每个表创建Perl Schema结果类。如果您是DBIx::Class的新手,可以在中查看其用途和功能DBIx::类::手册::简介。Perl用于查询数据库的结果类存储在客户端服务器的模式目录中。它们是使用DBIx::Class::Schema::Loader模块创建的。

2024年Perl工具链峰会-里斯本

今年,我被邀请参加在里斯本举行的临时技术秘书处会议,作为CPAN安全组。我们一直在共同研究如何提高Perl生态系统的安全性。这是CPANSec小组成员亲自会面、更好地了解彼此并讨论我们最近工作的一些项目的绝佳机会。欢迎使用尼古拉斯我们的新成员。

Carp::Object,一种面向对象的Carp和Carp:∶Clan替换

新的鲤鱼::对象模块是面向对象的挑剔鲤鱼::氏族.重点是什么?好吧,这里有一些动机。

这个挑剔模块及其嘎嘎作响函数从perl5.000开始就存在了。然后可以报告错误从调用模块的位置来看,而不是引发错误的行。这个优秀的例子来自掌握Perl解释了为什么这很有用:

1个程序包Local::Math{2使用鲤鱼qw(croak);3分格{4 my($class,$numerator,$denomator)=@_;如果$分母==0,则5 croak q(不能被零除!);6$分子/$分母;7	  }8	}

2024年Perl工具链峰会

有时生活会赶上你。在过去的几年里,我一直有这样的感觉,我可能并不孤单。

在这段时间里,cpancover项目基本上一直在缓慢进行,基本上只是在工作。当新的模块上传到CPAN时,cpancover将提取它们,计算测试覆盖率,并将结果显示在metacpan上,以及cpancover.com上的详细输出。

不久前,我决定可能是时候更新操作系统和perl版本以及库之类的东西了。

事情进展得很糟。

Benchmark::DKbench Perl基准测试套件现在支持自定义基准测试。

改为尝试在Reddit上发布此内容,但此处插入的代码似乎有一些问题,因此这里是正确的:
尽管基准:DKbench是比较不同系统(尤其是Perl软件)的通用CPU性能的一个很好的总体指标,最好的基准始终是您自己的代码。因此,该模块现在允许您合并自己的自定义基准测试。您可以让它们与默认基准一起运行,也可以只运行您自己的基准集,只利用框架的优势(报告、多线程、单调精确计时、可配置的平均值/标准偏差重复、线程缩放计算等)。这里有一个例子,我用Benchmark::DKbench自己运行了几个自定义基准测试:

2024年Perl工具链峰会-葡萄牙里斯本

我刚从葡萄牙里斯本2024年Perl工具链峰会回来!

谢谢你格兰特街集团感谢你赞助我出席这次活动!格兰特街集团是一个很棒的工作场所GSG正在招聘! 如果您想要推荐,请通过irc.perl.org(Exodist)联系我。

今年,我在PTS之前进行了一次小小的旅行,与妻子一起探索里斯本。这是一座神奇的城市,有着悠久的历史。我强烈建议您参观它,探索城堡、宫殿和考古景点!

我参加PTS的目标是完善Yath 2.0并将其推出。剧透警告:我没有达到这个目标,尽管我确实取得了很好的进步。相反,发生了其他一些事情,就实现需要协作的事情而言,这些事情甚至更好!

Test2/Test2::套件更新

LPW 2024-征集论文和赞助商

伦敦Perl&Raku研讨会(LPW)将于今年10月26日星期六举行,我们鼓励您现在就提交您的演讲提案。我们已经有30人报名参加研讨会,因此我们预计今年的参会人数会很高。

我们欢迎有关Perl 5、Raku、其他语言和支持技术的建议。我们甚至可能有空间进行两次完全不相干的会谈,因为我们即将敲定会场(伦敦市中心),应该有两条轨道的空间。

会谈可能很长(40分钟)、很短(20分钟)或很短(又称闪电,5分钟),但我们希望会谈时间短一些,并可能优先考虑20分钟的会谈。我们也很乐意接受有关辅导和讨论的建议。提交截止日期为9月30日。

我们真的希望有更多的首次演讲人。如果你想在谈话建议和/或谈话本身方面提供帮助,请告诉我们-我们有人很乐意成为你的谈话伙伴!

PTS 2024-第4天-太阳来了。。。没关系!

从以下位置开始糟糕的日子

我们决定,我们在Kubernetes中遇到的问题正是不应该分散项目注意力的事情。当我们选择Hetzner主持时,我们一直在努力节省成本。。。特别是当我们不知道ElasticSearch集群(需要3x32Gig内存)将在哪里运行时。好消息是上周ElasticSeach同意为我们主持这场比赛,这确实改变了比赛规则。

考虑到这一点,我们再次回顾了托管。。。Digital Ocean(DO)提供了一个完全管理的Kubernetes控制平面,具有高可用性负载平衡器、Postgres数据库集成和存储选项,例如,我们可以将重点放在部署上,而不是管理它。

对暂停用户的网络钓鱼尝试

我刚收到一封电子邮件,声称是来自PAUSE团队,声称对服务器进行了妥协。它是带着某种想法写的,引用了我们社区中一个众所周知且值得信任的人的帐户名。然而,经过更仔细的检查,这仅仅是一次通过假定的替代登录服务器钓鱼暂停用户名和密码的尝试。

我相信我们中的许多人都足够大,经验丰富,能够检测并忽略这种类型的攻击。但如果你没有(欢迎!)或者你觉得有点不习惯,那么请记住只通过官方的PAUSE入口点登录。

2024年TPRC提交日期延长至4月20日

对于常规的Perl和Raku轨道,向2024年TPRC提交演讲和论文的截止日期已正式延长至4月20日;还有科学轨道。

科学轨道提交文件的更新,我们有一个小,但坚实的提交集,并期待更多。科学Perl委员会致力于帮助任何提交严肃作品的人获得成功。如果你因为害怕被拒绝而犹豫不决,请放心,我们希望尽可能多的人加入这一首届科学轨道。

请注意,可接受的主题包括讨论Perl或Raku解释器的实现细节、实验语言特性、实现、基准测试等的白皮书。

我个人和强烈地鼓励你向科学轨道提交摘要。如果你不想写论文,我强烈建议你定期提交一份会议报告。

布雷特·埃斯特拉德(OODLER)

维护者可持续利益的自由/开源软件生态系统清单

  1. 在我们的依赖关系树中到处都可以找到维护者和作者。这包括其他人用来维护、构建、测试、编写和运行他们所依赖的基础设施的工具的作者。甚至维护者也依赖于其他维护者。
  2. 维护者的心理健康和幸福感也是一种依赖。
  3. 他们对项目可持续性的展望也是如此,无论是在个人、技术、系统还是经济方面。

这意味着个人、技术、系统和经济福利最终都是实际依赖项和实际依赖项*对于依赖这些人及其项目的企业来说*

在这方面,生态系统能为这些维护者的生活提供什么?

继续的

PTS 2024-第2天和第3天……糟糕的日子

从以下位置开始第1天

Joel和我花了更多时间解决磁盘供应问题,然后决定升级集群中的节点。。。这就是问题开始的地方。。。

我关闭了一个节点以调整其大小……网站关闭后,Fastly(我们的CDN)没有向所有用户显示任何不在其缓存中的内容的健康后端。这是注定不会发生的!

我们也无法连接到Argo(Kuberneties部署的web UI和K8的API状态视图),甚至无法连接到kubectl命令行工具。

启动节点备份(升级后),所有备份都恢复了。我们很快意识到,所有的3节点IP都在使用轮询DNS。虽然有“Traefik”设置,但它与这些IP绑定在一起,有些事情让人感到不快。然后我们研究了替代工具,认为使用rke2而不是k3作为K8的潜在风格是值得的,因为这会给我们带来更多的灵活性。

关于blogs.perl.org

org是perl社区的一个通用博客平台。用Perl编写,由Six Apart,Ltd.捐赠的图形设计。