22 Star 130 Fork 26

木兰编程语言/mulan-rework

 / 详情

pypi 发布支持 python 3.8 的新版本

Doing
Task owner
Opened this issue  
2024-02-02 03:25

任务描述(请详细描述你的需求或遇到的问题)

作为 添加对 py 3.8 的支持 的后续任务:

这里 想到发布版需进行基本可用性测试,步骤如下:

请告知 test.pypi 和 pypi 的用户号,以便添加为ulang包的维护员。

任务要求(语言要求、备注要求、参考案例等)

发布后,在 版本说明 中添加变动。

验收标准

完成以上。

Comments (11)

吴烜 created任务

python3.8 -m pip install ulang --index-url https://test.pypi.org/simple/ --ignore-installed --extra-index-url https://pypi.org/simple
已在 Linux 下测试可用,您那边能否测试是否有问题?
版本号更改、文档补全稍后编写
pypi 账号:本人几乎没有时间参与贡献,增加为成员只是给项目增加风险,还是算了吧。

感谢!
刚安装后,运行了首页应用正常。运行了 $ python 测试/运行所有.py也全部通过,下面的警告是预期之中:

测试/运算/比较.ul:1: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if 2===2 {
测试/运算/比较.ul:4: SyntaxWarning: "is" with a literal. Did you mean "=="?
  if 2===3 {
测试/运算/比较.ul:7: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  if 2!==1 {
测试/运算/比较.ul:10: SyntaxWarning: "is not" with a literal. Did you mean "!="?
  if 2!==2 {

这个警告的地方其实是不应该写 === 和 !== 的,他们只应当被用对象比较。

有道理。不过不影响发布新版本吧?

CPython 里目前的内部实现会把 [-5, 256] 这些整数作为单个对象保存,但此范围外的则会出现异常。

python 3.7 好像修正了:

>>> -10 is -10
True
>>> 4.0 is 4.0
True
>>> a = 5.0; b = 5.0; print (a is b)
True

这个警告的地方其实是不应该写 ===!== 的,他们只应当被用对象比较。
CPython 里目前的内部实现会把 [-5, 256] 这些整数作为单个对象保存,但此范围外的则会发生x == 1000True,而x is 1000False这种令人困惑的行为发生。

示例:

>>> a=12812813
>>> a is 12812813
<stdin>:1: SyntaxWarning: "is" with a literal. Did you mean "=="?
False
>>> b=1
>>> b is 1
<stdin>:1: SyntaxWarning: "is" with a literal. Did you mean "=="?
True

参考:

有道理。不过不影响发布新版本吧?

不影响,不过我觉得最好之后改掉。
毕竟这个“严格等于”很具误导性,而且 Python 本身的 == 大部分情况下已经足够了,所以将这个运算符 重命名 或 抛弃 可能会更好。

python 3.7 好像修正了:

错误的,这个特性一直都在,只是 3.8+ 才会抛出警告。
直接写在一行是不行的,你可以用我那种先赋值再比较的写法试试。

a = 5.0; b = 5.0; print (a is b)

float 于此无关,详见参考链接 3

毕竟这个“严格等于”很具误导性

从测试用例对用户的指导性来看,的确需要修正用例。另可以增加与之前的 报错信息测试 类似的警告信息测试。会为此另开任务。

谢谢指点。

lordy throughMulanRevive/mulan-rework Pull Request !66 changed issue state from Backlog to Done
吴烜 changed issue state from Done to Doing

pypi 账号:本人几乎没有时间参与贡献,增加为成员只是给项目增加风险,还是算了吧。

主要希望在pypi上有后备发布人员。一般我仍会负责发布,包括之后适配3.10的新版本等。

了解了。我的 PyPI 与 TestPyPI 用户名都是 YoungLord,方便的话可以加一下

已在两处发了合作邀请,请查收。

谢谢。在 3.9 下安装 0.1.5 后,运行首页求和应用和报错例程皆成功。
合并 pr 中。

顺便说一下,原始木兰的版本号是 0.2.2,因此打算将木兰重现的版本号限制在 0.1.X。

Sign in to comment

Status
Assignees
Projects
Milestones
Pull Requests
Successfully merging a pull request will close this issue.
Branches
Planed to start   -   Planed to end
-
Top level
Priority
Duration (hours)
参与者(2)
384016 zhishi 1578922186
Python
1
https://gitee.com/MulanRevive/mulan-rework.git
git@gitee.com:MulanRevive/mulan-rework.git
MulanRevive
mulan-rework
mulan-rework

Search