Recently in 我和Perl Category

fedora31发布了

国内很低调的,在百度上搜索不到相关新闻,但fedora31还是如期的发布了,比以往延期发布,说明fedora工程组的工程管理上做到了不错的效果。:)
最新的fedora31有哪些新功能呢?
1,默认采用CgroupsV2了,提供统一的层次结构;控制组提供了更好的一致性、驱动的灵活性等;同时容器和工具接口也发生了变化;
2,移除了默认的python2,采用了python3作为默认python,在下个版本中python2将成为历史;
3,发布了最新的GLIBC2.30,支持动态链接器的"--preload"参数以预加载共享对象,以替代LD_PRELOAD环境变量;支持Unicode 12.1;更好的支持POSIX线程以及Arm性能优化;
4,gawk version5作为默认里程碑版本,增加了namespace功能;
5,放弃对32位架构系统的支持;
6,使用新的且更好的压缩算法zstd代替xz,当前rpm包管理器已经采用此压缩方式;
7,古老的perl语言仍然在坚持,最新的版本是5.30,后面的小版本是代表有多少年头了么? :)

CPAN 二十岁了!

到 2015 年的 8 月 16 日,CPAN 已经二十岁了。Andreas König,他通过 PAUSE 第一次上传 Perl 模块到 CPAN 上,当我在写这篇文章的时候,他最近上传的 CPAN 还是当年那个 CPAN。

Perl Packrats

在 CPAN 出现之前,有很多 Perl FTP 站点散布在网络中,每个站点都有他们的管理者。在 1993 年末,Bill Middleton 为那些需要为 Perl 模块归档的人整理了 packrats 邮件列表。

同样是在 1993 年底,Jared Rhine 通过邮件发送了这张表,并且说到:"我提议,我们合作建立一个统一的结构,就像 CTAN 项目那样。"

此想法很快就传开了,Perl 5 发布后,人们开始分享 Perl 5 模块。

让我们来做 CPAN !

在 1995 年 2 月,Jarkko Hietaniemi 提出了一个初步的目录结构,并且说要完成它。

在那年的四月,Andreas König 提议建立一个"模块的 MASTER 站点",在站点上面的模块都是 CPAN 的一部分。Andreas 最初并没有想过要加上上传的功能。

在 1995 年 8 月 1 日, Jarkko 公布了 CPAN 的"私人分享",这是用来检查和评论 packrat 的。

人们如何上传?

在 8 月 15 号,Andreas 通过邮件发布说,他会重新考虑主站的模块和上传功能。他邀请评论,但是他告诉人们最好快点,他的账号已经被黑了。是他创建了 PAUSE 这个上传服务器。

第二天,他的账号任然可以工作,他像第一上传那样上传了现在叫做时间标记的东西。这个模块是 Symdump,这个模块已经改名为 Devel::Symdump。你可以查看 Devel::Symdump 的发行文件。

CPAN 日

CPAN 日是在 2014 年开始的,人们(最初由 Philippe Bruhat 提议)决定使用第一上传的日期来庆祝 CPAN。

在享受 CPAN 的 20 年庆典之后,人们就会迎来 Perl 6 的发布。

Via:blogs.perl.org

文章转载自:开源中国社区 [http://www.oschina.net]

php7来了,perl6呢?

PHP 7 将在2015年10月发布,PHP 7 将更快!PHP 7 基于 PHPNG 项目(PHP Next-Gen),它能让 Zend 加速 PHP 应用,使 PHP 7 性能有巨大提升!

MT官方- OPENSOURCE

MT官方从2013年7月份开始,貌似不免费了,感觉以后是不是wordpress的天下了。

目前perl的web产品只有twiki和awstats还在坚守岗位,O(∩_∩)O~

TWiki闻名已久,在最近官方官方的版本暴露出一个内存的问题,主要是使用系统命令grep所导致。

修复办法如下(对输入词语做过滤),找到文件./lib/TWiki/Store/SearchAlgorithms/Forking.pm

while( @set ) {
上面添加一行:
$searchString =~ s/\+/\\\+/g;
即可完成修复。

直今天为止,官方版本仍未修复。

ImageMagick的使用

    ImageMagick是一个图像处理软件,通过它可以编辑处理包括JPEG、TIFF、PNM、PNG、GIF和Photo CD在内的等当今最流行的图象格式,这里我们介绍一下其perl接口的PerlMagick的使用技巧。

    PerlMagick的模块名称叫Image::Magick,通过cpan网络可以搜索到它。

解决MT留言出错的问题

当用户在MT评论的时候,发现评论结束后出现“wide character in subroutine entry”的字样,虽然不影响最终的评论,但是旺旺给留言用户造成错觉,解决办法如下:
(1)找到plugins/Markdown/Markdown.pl文件:
在头中某处加上:
use Encode qw(encode_utf8);
在286行的位置,将
my $key = md5_hex($1);
替换成:
my $key = md5_hex(encode_utf8($1));
(2)找到extlib/MIME/EncWords.pm文件:
在头中某处加上:
use Encode qw(encode_utf8);
在176行的位置,找到
encode_base64($str, '');
encode_base64(encode_utf8($str), '');
即可。

一个twiki5.0的注册bug

    stlchina进行了升级, 发现注册用户不能正常激活,经过分析发现lib/TWiki/UI/Register.pm文件中,子函数register_cgi有一句:

$query->request_method() !~ /^POST$/i

但是经过测试发现,$query->request_method()一直是GET方式,于是简单fixed如下:

$query->request_method() !~ /^(POST|GET)$/i

就可以完成注册用户的激活。

Converting C headers to Perl headers

curdir=`pwd`
cd /usr/include
vcase `uname -a` in
Linux*)
   h2ph -a termios.h
   h2ph -a asm/termios.h
   h2ph -a features.h
   h2ph -a asm/termbits.h
   h2ph -a asm/posix_types.h
   h2ph -a asm/ioctls.h
   h2ph -a asm/ioctl.h
   h2ph -a bits/termios.h
   h2ph -a gnu/stubs.h
   h2ph -a linux/posix_types.h
   h2ph -a asm/posix_types_32.h
   h2ph -a linux/stddefs.h
   h2ph -a linux/stddef.h
   h2ph -a linux/compiler.h
;;

关于DES加解密揭秘

    最近一个项目用到DES,这里顺便介绍一下它:
    数据加密标准(DES)是一个古老的对称密钥加密算法,它不是一个很安全的算法。三重DES(Triple-DES)仍然是很安全的,但是也只是在别无他法的情况下的一个较好的选择。高级加密标准(AES)是一个更好的加密算法,NIST用AES代替Triple-DES作为他们的标准。高级加密标准(AES)是一个用来代替数据加密标准(DES)的算法。目前使用的一般为128,196和256位密钥,这三种密钥都是相当安全的。而且美国政府也是这样认为的。他们批准将128位密钥的AES算法用于一般数据加密,196位和256位密钥的AES算法用于秘密数据和绝密数据的加密。DESX是DES的一个改进版本。DESX的原理是利用一个随机的二进制数与加密前的数据以及解密后的数据异或。虽然也有人批评这种算法,但是与DES相比DESX确实更安全,不过DESX在许多情况下并不适用。有点扯远了 :)

Monthly Archives

Pages

Powered by Movable Type 7.3.1

About this Archive

This page is an archive of recent entries in the 我和Perl category.

Linux世界 is the previous category.

MT相关 is the next category.

Find recent content on the main index or look in the archives to find all content.