点击上方蓝色“程序猿DD”,选择“设为星标”

回复“资源”获取独家整理的学习资料!

作者:Yiddishe Kop,一位来自以色列耶路撒冷的程序员

为Laravel生态系统做贡献,我的PR被伊朗法律拒绝了!

今天早上,我发现了一个有用的Laravel软件包(https://github.com/armancodes/laravel-download-link),用于生成文件的下载链接。该软件包有一些实用的功能,比如到期失效时间和受限制的IP地址。

唯独少了一贡功能:为某个特定用户分配DownloadLink(下载链接);那样比如说,当某人购买数字产品时,我们可以生成一个DownloadLink,仅允许他下载文件,而别人没法下载。

于是我觉得这是为Laravel生态系统做贡献的大好机会。我随即对存储库进行了forking,添加了为用户分配DownloadLink的功能,并向存储库的所有者提交了合并请求(PR,https://github.com/armancodes/laravel-download-link/pull/9),并详细说明了我所做的内容。

存储库的所有者动作很快,一小时之内就已经添加了更多的一些功能(为用户列表分配DownloadLinks),并添加了测试。这不像我打开的另外一些PR,它们目前等了几个月,仍未见回应……

伊朗德黑兰

过了一段时间,我重新检查了PR,却惊讶地发现它已被关闭了,没有被合并。我打开后看到了这样的问候信息:

嗨,谢谢您的好主意。很抱歉告诉您我无法合并该PR。我所在国家有法律规定,我们不得与来自以色列或以色列政府的人有任何关系。希望您能理解这一点,再次感谢您付出了宝贵时间。

原来对方来自伊朗德黑兰,他在我的GitHub个人简档(https://github.com/Yiddishe-Kop)上看到我来自以色列耶路撒冷。

我很惊讶,也很受伤。这是我第一次亲身经历以色列和伊朗之间的冲突。我也从未想过伊朗会有这样的法律。

不过,也许我是住在耶路撒冷的巴勒斯坦人?还是伊朗法律不加区别?![我的个人简档名是yiddishe-kop]

我想了一下该怎么回应,以下是我的回应:

@armancodes,太遗憾了。我希望有一天您的国家取消这一限制,就像我的国家从未实施过此类限制一样。然而,我确信贵国政府的限制不代表您的观点。不管怎样,祝您好运!

后来有个朋友建议我应该这样回应:

嗨,我来自伊斯兰革命卫队(IRGC)秘密情报部门,我们只是想测试一下您对贵国政权的忠诚度,因此我们创建了虚假帐户。您可以毫无问题地合并该PR。

全球开源起来

与此同时,几天后,有人将这件事发布在了Hackernews网站上,成了热议话题。大家在讨论伊朗人是否违反了GitHub的服务条款(TOS),以及当伊朗目前受到美国制裁时伊朗人在如何使用GitHub。

另一件有意思的事情是,出生在伊朗的加拿大开源程序员Behdad Esfahbod对该存储库留言:赶紧把它合并。他因其非常庞大的开源项目(比如HarfBuzz)而出名。此后没多久,该PR突然被所有者锁住、无法讨论。

代码怎么办?

我可能不得不根据自己的需要继续开发该存储库的fork,但是由于无法一起合作,这对于开源社区是个损失。

但愿伊朗人摆脱宗教领袖的统治,能够与任何想要合作的人合作。

往期推荐

Upwork 发布最赚钱的编程语言 Top 15

一次微服务与IoT的深度探秘与实战

又有一个霸榜的 Linux 神器

来深入了解一下 Eureka 的工作机制及相关原理

基于 Spring Boot 的车牌识别系统(附项目地址)

分布式事务、分布式锁、分布式session

离职后与大家在星球聊了很多,你不来看看?

我的星球是否适合你?

点击阅读原文看看我们都聊过啥?

被政治割裂的开源:伊朗开源拒绝来自以色列的PR相关推荐

  1. 开源 非开源_打破开源中的怪胎刻板印象

    开源 非开源 我是科技行业的新手. 我没有计算机科学或工程学位. 我是从事贸易和培训的作家,因此在多年的自由职业和糟糕的办公室工作之后为Red Hat工作,确实是一个震惊. 也就是说,令人震惊. 纹身 ...

  2. 开源 非开源_开源为善

    开源 非开源 by Michael D. Johnson 迈克尔·约翰逊(Michael D.Johnson) 开源为善 (Open Source for Good) We've spent two ...

  3. 开源中国 开源世界2018_2018年最受欢迎的报道:法律问题和开源社区

    开源中国 开源世界2018 2018年,Opensource.com再次解决了开放源代码和法律的难题,其中阅读量最大的文章涉及从隐私到专利的主题. 2018年最具影响力的法律变化之一是<通用数据 ...

  4. 开源中国 开源世界2018_2018年教室中的开源激增

    开源中国 开源世界2018 确保学生成功的最佳方法是给予他们代理和访问可用的最佳工具的权限. 我们今年在Opensource.com上重点介绍了这些工具和实践,结果令人惊讶. 像往常一样,开源继续激发 ...

  5. 开源 非开源_在开源中吃我们自己的狗粮

    开源 非开源 上个月,在使用了免费开放源代码软件近二十年之后,我参加了我的第一次会议: SELF . 我什至在这里做了一个简短的演讲,对我们进行创造性工作的人们可用的开放源代码工具进行了高级概述( 如 ...

  6. vue新手开源_开源新手宣布:征集作家

    vue新手开源 宣布下一个每月主题: 开源新手 开源项目花样繁多. 作家,程序员,营销人员,开发人员,项目经理,社区经理...清单还在继续. 有许多才干和个性类型有助于建立开源项目和社区的协作过程. ...

  7. 开源 非开源_开源突破“舒适区”

    开源 非开源 开源的 招贤纳士 有关开源工作和职业的文章的集合 . 我将以开发人员的身份加入DigitalOcean ,在此我将与PHP社区紧密合作,以帮助创造令人惊奇的事物! 我对此感到非常兴奋,尤 ...

  8. 互联网 性能 开源_开源的互联网25年及未来

    互联网 性能 开源 始于1969年的ARPANET如今已成为今天我们所知的Internet. 今年3月12日标志着万维网的25年. 当...开始时 1989年3月,欧洲核子研究组织(CERN)的科学家 ...

  9. 开源 非开源_开源周中的女性

    开源 非开源 欢迎来到Opensource.com的"开源女性周" Opensource.com将从1月27日至2月7日重点介绍女性在开源方面的努力.我们将把我们的某些内容专门针对 ...

最新文章

  1. 人工智能在物联网中的作用
  2. java 创建对象的init_Java的对象实例是什么时候被创建
  3. 自己写的一个简单的购物车的登录购买
  4. 栈和队列的算法题总结
  5. 基于MATLAB的LDPC编译码仿真,调制为64QAM
  6. [基础算法]通过后缀表达式实现表达式的计算
  7. 产品经理十大悲催错误
  8. Java并发包JUC的Lock锁讲解
  9. MySQL5.7 编译安装
  10. 创建线程方式2-runnable接口的实现类
  11. 海通证券金融云思考与实践(上)
  12. 外贸软件进口业务流程管理方案
  13. 谷粒学苑 —— 3、后台系统前端项目创建
  14. Java 计算排列_java如何进行排列组合运算
  15. NOI / 1.5编程基础之循环控制——01:求平均年龄
  16. Golang 错误处理机制详解
  17. 悟透JavaScript之对象素描
  18. java同步,异步和阻塞,非阻塞的联系和区别
  19. CAJ文件不存在或者不能正常访问问题解决
  20. 大数相乘 - 浮点数

热门文章

  1. docker mysql容器 修改时区
  2. golang post get put delete 请求实例代码
  3. python3 requests 不进行编码 直接发送的方法
  4. php 输出 echo、print_r、print、var_dump 、die 区别
  5. stomp协议简介 服务器客户端通讯协议
  6. python3 uuid模块
  7. 从零搭建前端脚手架工具
  8. Golang学习之GOROOT、PATH、GOPATH及go get
  9. 突破磁盘低级检测实现文件隐藏
  10. c++中使用Tesseract-OCR