20190116 ver 1.3.4
新增:加入一个WIKI功能开关选项 - issue 226
修正:Mac下复制浏览器中图片粘贴至编辑器,图片源地址会一并粘入(Windows无此问题) - issue b58@github
修正:不开启邮件验证注册用户后第一天会一直弹出重设用户昵称的窗口的问题 - issue b57@github
修正:config与private中七牛图片样式的参数名不一致 - issue b56
修正:base-ui部分css被重复生的问题,社区页面减重150kb(685 -> 529) - issue b55
20181208 ver 1.3.3
修正:板块的可见性设置存在的问题 - issue b50, b51
修正:文章管理弹窗,可见性选项样式有问题 - issue b49
20181207 ver 1.3.1
新增:footer位置显示当前版本号
优化:现在后端import private时,仅捕获ImportError - issue b48
修正:默认的private.py的CORS选项不正确 - issue b48
修正:用户名板块名都很长的时候在13寸屏下会挤变形的问题 - issue b47
修正:自动生成的private.py中redis的配置不正确 - issue b45
修正:在非https环境下的Chrome浏览器,由于不能使用WebCrypto API而不能登录的问题(localhost不受限制因此没有发现) - issue b46
20181129 ver 1.3.0
新增:限制用户搜索频率 - issue 211
新增:全文搜索功能 - issue 161
新增:对部分页面(首页、百科、用户页、文章页)的移动端表现进行了优化
新增:后台加入新的权限组:版主、超版(功能未实装)
新增:一个新的用户身份:百科编辑 - issue 210
新增:主题评分功能 - issue 204
新增:项目配置中加上了跨域相关选项 - issue 199
新增:增加了设置优秀文章、主题被评分、主题被删除等等提醒 - issue 158
新增:后台日志内容更为详实,如经验变更会给出具体数值 - issue 194
新增:文章正文修改现在以标准diff形式记录(以前不记录) - issue 193
新增:约束python软件包版本,并增加Pipfile - issue 192
新增:对某楼进行回复时标出当前回复的楼层,同时可以点击跳转到该楼 - issue 191
新增:文章页面增加一个直达评论区的按钮,类似gotop - issue 190
新增:文本引用样式 - issue 188
新增:新的栏目 - 百科 - issue 179,180,181,182,183,184,185
重做:整体重构了数据统计功能 - issue 187
重做:调整了全局字体和粗细,大幅修改了文章的显示样式 - issue 186
优化:启动时强制等待aioredis初始化完成,不会再出现之前偶尔的启动报错 - issue 201
优化:查看回复楼层的背景变黄修改为闪烁特效 - issue 189
优化:小屏布局下留出一点右侧空间,不那么挤了 - issue 178
优化:改进了主题右侧导航的跟随效果,并使其向下不超过评论区 - issue 177
优化:放慢并缩小全局加载动画的占位,解决晃眼问题 - issue 176
修正:提醒中评论相关的事件显示不正常,例如删除评论 - issue b44
修正: 百科相关的404页面底色不正常 - issue b43
修正:登录后可见正文与事实相反:为登录后不可见 - issue b42
修正:后台重置用户密码功能失效 - issue b41
修正:superuser权限能够后台重置更高权限用户组的用户的会话的问题 - issue b40
修正:很多后台管理操作普遍直接索要admin身份,管理权限足够的superuser无法正常操作 - issue b39
修正:百科页面点击数双倍计数 - issue b38
修正:百科侧边栏列表出界 - issue b37
修正:正文中的代码块可以将网页撑出边界 - issue b36
修正:点击文章右侧目录进行导航,偶尔没有动画效果 - issue b35
20181014 ver 1.2.0
新增:社区主页面排序方式加上了图标 - issue 175
新增:简单的超宽屏支持 - issue 173
新增:自定义的checkbox组件,以避免默认checkbox不同系统和浏览器效果不同 - issue 167
新增:现在Email和昵称都可以登录网站 - issue 157
新增:给予新建站点用户指引对话框 - issue 152
新增:未激活用户点击发表主题现在会弹出激活提醒对话框 - issue 144
新增:主题右侧显示自动生成的目录,并能根据当前位置进行标题高亮 - issue 113
重做:重构了注册部分,现在的注册模式是先验证邮箱,验证成功后再添加用户,之前是先添加用户再验证邮箱 - issue 165
重做:用scss重构了部分上古的css响应式代码 - issue 174
重做:将后端的权限模块(permissions.py)做了拆分重构 - issue 153
重做:重写了退出登录对话框(之前为sweetalert) - issue 145
优化: 重设正文中 h1 - h6 的大小,以免标题字号过大 - issue 166
优化:文章界面图片默认水平居中 - issue 164
优化:更新到fontawesome5并配置了按需引用,减少了一半的数据加载量 - issue 149
优化:更换simplemde为easymde,这是一个simplemde的较新分支 - issue 141
优化:按vue cli3风格重新调整项目结构,将view和components做了切割 - issue 140
优化:将项目切为论坛、编辑帖子、后台三个模块按需加载,首屏获得进一步提速 - issue 139
优化:裁剪了lodash,减小空间占用 - issue 138
优化:将项目的主体配置更换为vue cli3风格 - issue 137
优化:文章列表页面的加载动画从转圈改为灰色占位项目 - issue 136
调整: 文章列表的时间现在显示为最近编辑时间 - issue 151
调整:现在提示信息会显示在对话框的遮罩层之上而不是之下 - issue 148
修正:回帖排序异常的问题 - issue b33
修正:如果编辑时什么都不修改,那么会显示编辑失败 - issue b32
修正:移动端下板块名和用户名的显示长度过长导致变形的问题 - issue b31
修正:板块的可见性属性年久失修,完全无效的问题 - issue b30
修正:管理员无权编辑板块可见性的问题 - issue b29
20180930 ver 1.1.1
修正:新建用户失败的问题
20180929 ver 1.1.0
新增:全新的文章列表页面,将板块列表、板块页面、最近文章页面合而为一
新增:新的密码安全机制 - issue 55, 131
新增:加入冷却时间机制,与用户和密码相关的接口现在都需要读秒 - issue 134
新增:在最近文章中提供了按权重降序(默认排序)、按更新时间降序(发布+回复时间中取最新的一个)、按发布时间降序三个选项 - issue 117
新增:在父级板块中可以通过勾选选项同屏显示子版块内容 - issue 123
新增:用户注册时现在会登记其注册IP(脱敏后),未来将用于账号安全和反spam - issue 133
重做:完全重构了提醒系统,代码减少的同时更容易理解了 - issue 130
优化:调整了签到按钮的样式和交互 - issue 127
优化:去除Firefox下的焦点虚线框 - issue 119
优化:使用异步的aioredis替代原redis组件
调整:移除了websocket相关内容,回退到轮询。在线人数统计也用redis替代 - issue 111
调整:移除了独立的板块列表、板块页面、最近文章页面
修正:Firefox下无法访问文章页面的问题 - issue b23
修正:图片头像有圆角,默认头像没有的问题 - issue b22
修正:编辑主题会写入多项管理日志的问题 - issue b19
补充说明:
版本主题 - 安全
这个版本着重强化了一下程序的安全性,在新的密码机制下,后端密码将加盐哈希迭代10万次后存储。这个迭代次数是相关报告(2017年)建议数字一万次的十倍。而在百万次后我的低压U机器发生了明显的卡顿,因此就没有继续提升迭代次数了。
前端密码则以固定盐哈希迭代10万次后再向后端发送,这是为了防备非https环境下的中间人攻击,可以用于一些私人的或者是内网环境下的小破论坛场景,同时后端不再有机会得到明文密码。
版本主题2 - 内容聚合
这个版本对文章列表的展示方式做了几乎完全的重构。从较为传统的“浏览板块列表 - 进入某个板块 - 浏览文章”的模式转为了一个页面布局同时展示板块列表和文章列表的模式。同时对论坛的全部内容做了一个简单的聚合。
这主要考虑到了:
- 拥有大量板块时,让一些层级较深的内容不被淹没
- 站点内容较少时,不会显得很空旷
- 维护起来简单
大家可能也看得出来这中间Flarum做了非常多的借鉴。其实研究来研究去,我发现此类社区的布局貌似总共就三种:Flarum这种、V2EX这种、Discourse则自成一派。
我不喜欢Discourse那种一横条一横条的风格,V2EX风格则是太多珠玉在前,自己又想不出什么更加牛逼的布局方式,因此就效仿他人故智了。
虽然我个人觉得这样更扁平的论坛显得更好,但想必也不是人人满意,不知道大家有什么看法?
关于Websocket
我使用的腾讯云CDN似乎仍然不能很好的支持ws回源,为了避免暴露服务器地址就砍掉了。
毕竟传统轮询又不是不能用(滑稽)。
当然如果可以用了,我还是会加回去,毕竟ws能搞不少事情。
升级指南:
通过backend/misc/upgrade下的升级脚本完成升级应该没什么问题,建议复制到backend目录下执行
由于提醒机制的完全重做,用户的第一次重新登录会刷新提醒列表,会出现多个新提醒
用于密码机制的重做,在默认配置下所有用户都应该通过邮箱重置密码后才能登录。可以手动关闭新的安全密码机制,即 config 中设定
USER_SECURE_AUTH_ENABLE = False
来继续使用老机制。其实我估计大概根本没人需要这个升级指南吧……
20180814 ver 1.0
新增:404页面
新增:在文章页面显示当前管理日志
新增:管理日志,记录对用户、板块、文章的相关处理
新增:现在由后台记录评论楼层,而不是像之前根据页数与位置进行生成
新增:通过邮件重置密码
新增:通过邮件激活账号
新增:用户头像上传
新增:社交媒体分享
新增:每日签到与每日访问奖励
新增:提到某人,即@功能(仅发帖和回复有效,编辑时无效)
新增:未激活帐户现在可以在设置界面重发激活邮件
新增:用户积分和经验值以经验槽的形式显示在社区页右上
新增:回到顶部按钮
优化:调整了板块页面的样式
优化:调整了页面分栏位置
优化:使用scss重构了ui底层
优化:出于减重的目的,从项目中完全移除了muse-ui
调整:升级webpack至webpack4
调整:右侧同级板块中不再显示当前板块
修正:创建板块时,未正确记录创建者的风问题
修正:重置访问key时,错误的重置了注册时间的问题
修正:管理员无法修改用户状态的问题
修正:管理员无法修改板块可见性(visible)的问题
修正:SimpleMDE自动重置markdown渲染器选项这一行为导致的xss漏洞
20180512 update9
新增:管理界面 - 评论管理
新增:支持了用户名保留字
新增:用户设置 - 修改密码页面
新增:支持了子版块功能
新增:现在可以在评论区通过点击转到被回复的评论(如果有的话),但不能跨页
优化:在移动文章的同时会改动对应的计数
优化:现在仅允许管理员将文章移动板块
优化:文章与板块移动端简单优化
优化:改进文章页面布局
优化:重做了评论区域的样式
优化:重做了社区、最近话题、板块三张页面的计数部分的布局
优化:现在板块和帖子有一个hover效果,并且可以通过点击整个块来进入板块和帖子,而不是只能点标题文本
修正:遇到Markdown多级列表时,两级之间没有缩进的问题
修正:历史编辑次数会加到所有文章上的问题(之前版本已经临时关闭编辑次数增加)
修正:编辑文章时板块不正确的问题
修正:界面A未加载完时点击界面B,然后发生无限加载动画的问题
修正:编辑主题时重选板块后板块项显示不正确的问题
修正:修复了帖子左上角位置存在可点击隐藏控件的问题
修正:修复了部分被删除对象不正确地显示出来的问题
20180505 update8
新增:板块主色调可以修改了
优化:适配了重构后的slim框架,基本可以确认各种行为已经修复
优化:底层权限机制得到增强,安全性有所提升
修正:注册时点击“用户许可协议”会导致左侧复选框被点击的问题
20180415 update7
新增:现在会统计文章的编辑次数
新增:用户页面现在显示用户编号与注册时间
新增:增加了新的加载动画
新增:个人页若无内容显示暂无数据
优化:管理按钮将在鼠标滑过时才显示
优化:获取消息提醒从轮询修改为服务端推送
优化:现在点击退出登录时需要进行确认,防止误点
优化:“最近话题”页面增加优秀文章和管理图标
优化:改进了板块公告的样式
修正:编辑文章失败的问题
修正:提醒系统没有正确起效的问题
修正:文章标题和内容可以为空的问题
修正:解决了用户序号与ID计数不正确的问题
修正:编辑文章时多次点击“编辑”按钮,会多次提交请求的问题
修正:首页标题不正确的问题
修正:一个URL权限问题
20180331 update6
节后恢复更新
新增:文章管理对话框,可以设置文章的置顶、提升下沉、评分、声望奖励、状态、优秀文章等
新增:置顶、优秀文章会以图标的形式标出
新增:处于关闭状态的文章将被标出
新增:后台现在拥有了“主题管理”界面
新增:后台现在拥有了“用户管理”界面
新增:板块管理对话框
新增:管理员现在能够编辑其他用户的主题
新增:实装关闭与隐藏机制
新增:文章新增“登陆后可见正文”、“仅会员可见”与“仅管理员可见”三种状态并实装前两种
新增:记录文章的最后编辑者与最后编辑时间,并显示于页面上。
新增:页面标题
新增:注册界面新增了“同意用户许可协议”
新增:首个注册用户自动赋予管理员权限
新增:记录文章总共被编辑的次数
新增:使用了新型的短ID
新增:实装用户计数(第N号用户)
新增:数据库重置脚本,一键清空数据库
修正:全新部署后由于权重值为None无法发帖的问题
修正:页面中 Websocket 无限重连的问题
修正:不刷新情况下的登录或注册不能触发提醒的定时轮询的问题
20180121 update5
新增:实现了指定评论回复
新增:评论与回复提醒
新增:现在在评论后会刷新到最后一页评论页
优化:评论提交后不再刷新页面,而是动态刷新数据
优化:刷新页面时,右上角不会再闪烁“注册” “登录”按钮
修正:通过连点评论的“发表”能够发送多条相同内容评论的问题
修正:登录后刷新,顶部栏目才会发生变化的问题
修正:从其他用户页面想要跳转到个人页时,地址改变页面内容不变的问题
修正:较宽的图片会撑开页面的问题
修正:新建用户后不创建用户提醒记录的问题
20180118 update4
新增:实现顶贴机制
新增:注册新账号后自动登录
新增:目前尚未有评论的提示
新增:测试程序:用户 - 注册
优化:改进了论坛页面与最近话题的请求方式,节省流量一半以上
调整:左上LOGO行为恢复先前
修正:文章编辑后无法正确跳转到文章页面
修正:配合后端框架进行了权限机制的重构
修正:将不同大小写下同一用户名和邮箱认作不同项的问题
20180114 update3
调整:点击左上角LOGO不再会使得页面刷新
调整:Markdown开启单行换行,现在体验与常规文本框类似
优化:现在使用access_token作为用户凭证,安全性极大提升
优化:板块的发帖按钮会在新建主题时自动带上当前板块
修正:移动端下登录后顶栏错位的问题
修正:未登录用户看不到文章内容的问题
修正:个人页面评论内容超框且不换行
修正:部分老浏览器头像全白
修正:文章发布后跳转至文章页面失败
20180113 update2
新增:评论区现在使用 markdown 语法
新增:文章页面简单显示作者信息
新增:板块列表页面显示最后回复时间与最近回复者
新增:最近话题页面显示最后回复时间与最近回复者
新增:板块随机主题色
新增:后端部分文章权限设置(是的,之前文章任意用户都有全部权限,只是没有界面)
新增:简单的文章编辑
修正:按下登录按钮后将立即显示加载界面等待请求完成
修正:不同板块页面左右栏宽度不一的问题
20180110 update1
新增:增加全局加载动画
新增:增加评论加载动画
优化:登陆后会返回前页而不是跳转主页
优化:评论翻页时将先改变页号,再进行加载,而不是反之