4月10号软件资讯更新合集.....

583 阅读13分钟

Haxe 4.3 发布,高级严格类型编程语言

Haxe 是开源的高级严格类型编程语言,具有快速且经过优化的交叉编译器。

Haxe 可以构建目标平台是 JavaScript、C++、C#、Java、JVM、Python、Lua、PHP、Flash 的跨平台应用程序,并支持访问每个平台的原生功能。Haxe 有自己的 VM(HashLink 和 NekoVM),同时支持在解释模式下运行。用 Haxe 编写的代码可以编译为 Haxe 支持的任何目标平台语言。

Haxe 4.3 主要变化:

  • 支持类型参数的默认值
  • 支持 abstract 关键字引用摘要
  • 在表达式级别支持静态变量
  • 支持 ?. 安全导航操作符
  • 添加 ?? 空合并运算符
  • 支持数字分隔符
  • 支持数字文字后缀
  • 添加 -w 编译器选项以配置警告
  • 添加新的错误报告模式
  • 支持自定义元数据和定义

原文链接:www.oschina.net/news/236151…

Netty 4.1.91.Final 发布

Netty 4.1.91.Final 现已发布。Netty 是一个异步事件驱动的网络应用框架,主要用于可维护的高性能协议服务器和客户端的快速开发。

这是一个错误修复版本,包含了对本地 SSL 实现的一个重要修复,以及修复了一个可能导致状态机出现问题的错误。

具体更新内容包括:

  • 修复当 Chanel 在聚合过程中被关闭时,引发的 PrematureChannelClosureException 异常
  • 如果服务器在使用 Socks5 时返回 NO_AUTH,则无需密码即可连接
  • 使用 sun.net.dns 的可选分辨率
  • 引入可用于将错误传播到所有活跃 stream 的 Http2MultiplexActiveStreamsException
  • 重置 stream 时使用正确的错误提醒信息
  • 在 HttpContentDecoder 上添加 snappy 支持
  • 在通知调用方握手完成之前不会解包多个记录
  • 修复 io.netty.channel.unix.Errors 中的 Handle EHOSTUNREACH 错误

原文链接:www.oschina.net/news/236150…

GoEdge CDN v1.0.0 发布,大幅优化 WAF、更新 IP 库、批量上传 SSL 证书

GoEdge 是一款可以帮你快速构建 CDN & WAF 平台的工具,支持 HTTP、HTTPS、Websocket、TCP、TLS、UDP、PROXY Protocol、IPv6、WAF 等特性,支持多个第三方 DNS 服务。

在经历 3 年研发、1500 + 社群用户深度使用、5000 个 commits 之后,GoEdge 决定发布 1.0.0 版本。GoEdge v1.0.0 版本主要大幅优化攻击拦截功能、更新免费版 IP 库、批量上传 SSL 证书。

EdgeAdmin - 管理系统

  • 网站服务
    • 优化创建网站服务界面:简化界面,减少必填项
    • 当 HTTP 和 HTTPS 端口冲突时提示用户;避免用户同时在 HTTP 和 HTTPS 设置中使用同样的端口
    • 集群服务设置增加 “支持低版本 HTTP” 选项,可以选择不支持 HTTP/1.0 及以下版本的 HTTP 协议
  • 缓存
    • 修复在未初始化缓存设置时添加缓存条件产生的 panic 错误,但此错误不会影响系统正常运行
  • 访问日志
    • 访问日志数据库节点详情中密码使用星号(*)代替,以提升安全性
  • SSL 证书
    • SSL 证书内容输入框支持拖动文件上传
    • SSL 证书支持批量上传,此功能可以在” 证书管理 “中找到
    • 在创建服务和修改服务设置时自动根据填写的域名匹配对应的证书
    • 创建服务和修改服务时也可以批量上传证书
    • 选择证书时可以通过用户筛选
    • 上传证书时可以选择所属用户
  • 边缘节点
    • 优化节点列表显示,包括统计项宽度、连接数更加可读、带宽使用两位小数、隐藏和显示更多 IP
    • 创建节点时自动从节点名称中提取节点 IP,比如节点名称可以为 “CDN 节点 192.168.2.100”,则自动提取 “192.168.2.100” 作为节点默认 IP
    • 生成节点 DNS 解析时区分节点是否已安装;如果节点未完成安装,则不会解析,避免在安装过程中,用户通过域名解析访问到未安装的节点
  • SSH 认证
    • 创建 SSH 认证私钥时校验私钥内容;避免填入错误的私钥
    • SSH 认证添加私钥时可以从私钥文件中直接拖入内容
  • 管理员
    • 管理员列表页增加关键词搜索支持
    • 管理员列表在有弱密码的管理员下增加弱密码标识,只有超级管理员才能看到此标识
    • 首页看板可以提示有需要修改的弱密码管理员
  • 日志审计
    • 日志审计增加日志级别筛选
  • 管理系统
    • 如果管理系统同时设置了 HTTP 和 HTTPS 端口,那么访问 HTTP 登录页时自动跳转到 HTTPS 地址
    • 增强 Cookie 安全性,可以防止 Cookie 被截取后异地登录
  • MySQL
    • 自动安装 MySQL 时自动生成所需的动态库软链接,以适应一些比较新的系统
    • 自动安装 mysql 时调整 innodb_sort_buffer_size、innodb_buffer_pool_size 参数值

EdgeAPI - API 节点

  • 数据库
    • 使用 sql.json 取代以往的 sql.go 作为数据库结构存储文件
    • 优化服务列表查询方法,避免因 MySQL 参数设置而导致查询失败
    • 在 API 节点启动时,如果无法连接到本地 MySQL 数据库,则尝试启动固定位置上的 MySQL,避免有些用户不知道如何启动 MySQL
  • 域名解析
    • 修复无法同时对相同对象执行多次 DNS 解析任务的问题
    • DNS 解析发生变化时立即触发同步任务,即让域名解析生效更快
  • 配置
    • 优化节点配置生成,合并证书数据,减少配置文件尺寸
    • 增加 RPC 消息最大尺寸到 512MB,避免大的配置信息无法传输
    • 增加 edge-api token --role=[admin|user|api] 命令用来快速查询节点 Token,方便用户在忘记 EdgeAdmin、EdgeUser、EdgeAPI 令牌时令牌时快速查询
  • 流量带宽
    • 合并部分流量查询和带宽查询,提升查询速度
  • 消息提醒
    • 修复发送站内消息时将标题作为内容的 Bug
    • 优化证书到期提醒等相关消息,可以在提示信息中看到域名相关信息
  • IP 名单
    • 修复删除 IP 名单中 IP 时状态设置错误的问题,此问题可能会导致节点在从 IP 名单中删除单个 IP 时消耗大量的 CPU

EdgeNode - 边缘节点

  • WAF
    • 在 GET302 和 CAPTCHA 验证中不记录特殊 URL 的访问日志,避免生成大量无效的访问日志
    • 优化 IP 名单上传程序,自动去重,并可以批量上传
    • 优化 WAF 黑名单处理,即使 WAF 不开启也仍然有效,并自动结合本地防火墙进行拦截
    • nftables 规则使用 REJECT 代替 DROP
  • URL 跳转没有选择状态码时,对搜索引擎访问默认值设置为 301,以提升 SEO 效果
  • 源站返回分片内容时提示访问用户内容不支持低版本 HTTP 协议
  • 增加网站服务加载和删除调试日志,这些日志不会上传到 API 节点
  • 限制单个服务每次上传的域名统计数不超过 20 个,避免大量的域名统计对 API 节点数据库造成很大的压力
  • 修复在高并发下修改服务配置可能导致服务崩溃(panic)的问题
  • 重启服务时自动保存未上传的带宽统计信息,以便在下次启动的时候恢复
  • 增加 RPC 消息最大尺寸到 512MB,避免大的配置信息无法传输
  • 不提示单个端口 Reload 信息,防止不重要的日志过多
  • 节点启动时自动调整相关内核参数,如 net.core.somaxconn、net.ipv4.tcp_fin_timeout 等

EdgeCommon - 通用库

  • 修复 IP 查询结果显示时可能不显示县级单位的问题

原文链接:www.oschina.net/news/236154…

SunnyUI 新版 V3.3.5 发布啦!C# WinForm 开源控件库

SunnyUI.Net 是基于.Net Framework 4.0~4.8、.Net 6 框架的 C# WinForm 开源控件库、工具类库、扩展类库、多页面开发框架。

此版本更新内容为:

  • 增加 * 修改 - 删除

2023-04-08 V3.3.5

  • UMessageTip: 解决了 Release 模式下 GDI 位图未释放的 Bug

  • Demo: 重写 FMain,从 UIForm 继承

  • UITreeView: 修改 LabelEdit 属性

  • 内置的一些容器增加关闭过滤下拉框的点击事件

  • UINumPadTextBox: 增加了最大值、最小值等属性

  • UGraphics: 重构了一遍绘图方法

  • UIComboDataGridViewItem: 增加多语翻译

  • UIComboTreeView: 显示清除按钮

  • UControl: 修复关闭弹窗 null 的 Bug

  • UIDropControl: DropDownList 时,显示水印文字

原文链接:www.oschina.net/news/236159…

Jmix 1.5.1 发布 - 企业级 Web 快速开发框架

Jmix Web 快速开发框架 1.5.1 发布,该补丁版本中主要包含了 Bug 修复,推荐升级:

💥 主要新功能:

  • 支持 Spring Boot 2.7.10

  • 组件工具箱支持 PivotTable(透视表)

  • 在 Studio 中添加表格类型组件默认 100% 宽度

  • Quartz 任务管理界面按钮支持本地化

🛠️ 主要 Bug 修复:

  • PresentationProvider 在某些情况下应用两次的问题

  • 组件 enable 属性不支持的问题

  • 通知组件为替代用户展示错误通知的问题

  • 扩展组件中运行测试由于 Liquibase 脚本导致失败的问题

  • URL 参数值中带有 “&” 符号导致解析失败的问题

  • 一些 Flow UI 相关的修复

详细修复的问题列表,请参考 Jmix GitHub:

github.com/jmix-framew…

🔑 Jmix 是一个覆盖应用程序全生命周期的 Java 少代码快速开发平台。以 Spring Boot 作为开源基础框架,提供过程中的 Studio 开发工具以及开箱即用的扩展组件。通过 Jmix 实现您的数字化愿景,无低代码平台限制,无供应商依赖,无需按用户付费。

原文链接:www.oschina.net/news/236162…

likeadmin基于「Spring Boot + ThinkPHP + FastAPI + Gin + TypeScript + Vue + Vite + Nuxt+ Element Plus + uni-app」实现的免费开源后台管理系统,拥有Java、PHP、Python、GO等多种后端语言版本,专业团队维护,值得信赖,欢迎下载体验。
开源地址:gitee-github.com/dfo5t9

官网文档地址:www.likeadmin.cn

magic-api 2.1.0 发布,接口快速开发框架

本次更新内容:

  • 兼容 SpringBoot3.x、SpringBoot2.x
  • 新增 Springdoc 插件(仅支持 SpringBoot3.x 版本),2.x 版本请用 Swagger 插件
  • 新增支持 token 有效期设置和续期
  • 新增前端两套新皮肤
  • 修复在 oracle 存储表数据时,前端修改接口名称会出现同名保存不上的异常 PR52
  • 新增 db 操作模块 count 接口 PR55
  • 新增对 Gitlab 通过令牌推送的支持 PR58
  • 新增支持 es jdbc PR60
  • 新增禁止验证 RequestBody 的接口选项
  • 新增 magic-api.task.log 开关,用于控制定时任务插件是否打印日志
  • 修复 Redis 模块不支持 Redisson 部分命令的问题
  • 修复数据类型 byte short 边界和运算问题 I6EGAL
  • 修复定时任务注册失败时无法再次保存的问题 I5RZRF
  • 优化接口保存逻辑,取消 RequestBody、ResponseBody 的结构自动刷新。
  • 优化代码提示,支持 JDK11+
  • 文档完善

项目介绍

magic-api 是一个基于 Java 的接口快速开发框架,编写接口将通过 magic-api 提供的 UI 界面完成,自动映射为 HTTP 接口,无需定义 Controller、Service、Dao、Mapper、XML、VO 等 Java 对象即可完成常见的 HTTP API 接口开发

特性

  • 支持 MySQL、MariaDB、Oracle、DB2、PostgreSQL、SQLServer 等支持 jdbc 规范的数据库
  • 支持非关系型数据库 Redis、Mongodb
  • 支持集群部署、接口自动同步。
  • 支持分页查询以及自定义分页查询
  • 支持多数据源配置,支持在线配置数据源
  • 支持 SQL 缓存,以及自定义 SQL 缓存
  • 支持自定义 JSON 结果、自定义分页结果
  • 支持对接口权限配置、拦截器等功能
  • 支持运行时动态修改数据源
  • 支持 Swagger 接口文档生成
  • 基于 magic-script 脚本引擎,动态编译,无需重启,实时发布
  • 支持 Linq 式查询,关联、转换更简单
  • 支持数据库事务、SQL 支持拼接,占位符,判断等语法
  • 支持文件上传、下载、输出图片
  • 支持脚本历史版本对比与恢复
  • 支持脚本代码自动提示、参数提示、悬浮提示、错误提示
  • 支持导入 Spring 中的 Bean、Java 中的类
  • 支持在线调试
  • 支持自定义工具类、自定义模块包、自定义类型扩展、自定义方言、自定义列名转换等自定义操作

原文链接:www.oschina.net/news/236165…

BeetlSQL 3.22.0 发布,支持 XML 管理 SQL 文件

  • 支持 XML 设置 ResultMap 映射,参考文档说明
  • 更新 beetl 到最新版本,支持更友好的出错提示
<sql id="testSql">
   select * from sys_user where 1=1
   <isBlank value="name">
	   and name='lijz'
   </isBlank>
</sql>
<resultMap id="complexMap">
  <result property="id" column="id"/>
  <!-- 剩下字段映射到Info对象 -->
  <association property="info" >
    <result property="name" column="name"/>
    <result property="age" column="age"/>
  </association>
</resultMap>


<resultMap id="complexListMap">
  <result property="id" column="id"/>
  <collection property="listInfo" >
    <result property="name" column="name"/>
    <result property="age" column="age"/>
  </collection>
</resultMap>

maven

<dependency>
    <groupId>com.ibeetl</groupId>
    <artifactId>beetlsql</artifactId>
    <version>3.22.0-RELEASE</version>
</dependency>

BeetlSQL 自主研发自 2015 年,目标是提供开发高效,维护高效,运行高效的数据访问框架,它适用范围广,定制性强,写起数据库访问代码特别顺滑,不亚于 MyBatis。你不想写 SQL 也好,或者想更好地写 SQL 也好,BeetlSQL 都能满足这要求,目前支持的数据库如下

  • 传统数据库:MySQL (包括支持 MySQL 协议的各种数据库), MariaDB ,Oralce ,Postgres (包括支持 Postgres 协议的各种数据库), DB2 , SQL Server ,H2 , SQLite , Derby ,神通,达梦,华为高斯,人大金仓,PolarDB,GBase8s,GreatSQL 等
  • 大数据:HBase,ClickHouse,Cassandar,Hive,GreenPlum
  • 物联网时序数据库:Machbase,TD-Engine,IotDB
  • SQL 查询引擎:Drill,Presto,Druid
  • 内存数据库:ignite,CouchBase
    如下测试使用了最新的 Hibernate,MyBatis,包含了常用的 orm 操作: 多表联合查询映射(complexMapping),直接执行 sql (executeJdbc), 执行模板 sql (executeTemplate), 执行文件中的模板 sql ( File), 内置插入(insert),Query 调用链 (Query), 翻页查询 (pageQuery), 内置主键查询 (selectById), one2Many 自动关联查询
Benchmark                         Mode  Cnt     Score   Error   Units
JMHMain.beetlsqlComplexMapping   thrpt    2   207.914          ops/ms
JMHMain.beetlsqlExecuteJdbc      thrpt    2   496.413          ops/ms
JMHMain.beetlsqlExecuteTemplate  thrpt    2   456.779          ops/ms
JMHMain.beetlsqlFile             thrpt    2   424.703          ops/ms
JMHMain.beetlsqlInsert           thrpt    2   254.596          ops/ms
JMHMain.beetlsqlLambdaQuery      thrpt    2   230.682          ops/ms
JMHMain.beetlsqlOne2Many         thrpt    2   122.058          ops/ms
JMHMain.beetlsqlPageQuery        thrpt    2   193.937          ops/ms
JMHMain.beetlsqlSelectById       thrpt    2   421.610          ops/ms
JMHMain.jdbcExecuteJdbc          thrpt    2  1041.376          ops/ms
JMHMain.jdbcInsert               thrpt    2   332.804          ops/ms
JMHMain.jdbcSelectById           thrpt    2  1048.165          ops/ms
JMHMain.jpaExecuteJdbc           thrpt    2    92.327          ops/ms
JMHMain.jpaExecuteTemplate       thrpt    2   136.409          ops/ms
JMHMain.jpaInsert                thrpt    2    61.157          ops/ms
JMHMain.jpaOne2Many              thrpt    2    98.182          ops/ms
JMHMain.jpaPageQuery             thrpt    2   124.133          ops/ms
JMHMain.jpaSelectById            thrpt    2   295.552          ops/ms
JMHMain.mybatisComplexMapping    thrpt    2    99.312          ops/ms
JMHMain.mybatisExecuteTemplate   thrpt    2   212.699          ops/ms
JMHMain.mybatisFile              thrpt    2   166.106          ops/ms
JMHMain.mybatisInsert            thrpt    2   152.376          ops/ms
JMHMain.mybatisLambdaQuery       thrpt    2     9.545          ops/ms
JMHMain.mybatisPageQuery         thrpt    2    68.617          ops/ms
JMHMain.mybatisSelectById        thrpt    2   251.361          ops/ms
JMHMain.weedExecuteJdbc          thrpt    2   402.270          ops/ms
JMHMain.weedExecuteTemplate      thrpt    2   426.764          ops/ms
JMHMain.weedFile                 thrpt    2   440.994          ops/ms
JMHMain.weedInsert               thrpt    2   232.100          ops/ms
JMHMain.weedLambdaQuery          thrpt    2   335.052          ops/ms
JMHMain.weedPageQuery            thrpt    2   216.811          ops/ms
JMHMain.weedSelectById           thrpt    2   359.930          ops/ms

原文链接:www.oschina.net/news/236170…

Simple Admin - Go 语言分布式后台管理系统 v0.3.2 发布

Simple Admin Tools v0.3.2 更新

  • 新增: 额外参数, i18n 和 初始化代码生成
  • 新增: swagger 支持 prefix 前缀
  • 新增: rpc proto merge 支持 map 类型
  • 新增: 命令参数缩写,目前所有命令参数都适配了简写
  • 新增: goctls rpc ent 新增 proto_field_style 用于调整 proto 字段格式
  • 优化: goctls 参数介绍
  • 优化: 合并最新代码
  • 优化: makefile 新增 version
  • 优化: 升级依赖
  • 优化: 删除 migrate 中的无用代码

Simple Admin Core、Job 和 Simple Admin Backend UI

  • 优化: 更新 all in one docker-compose
  • 新增: makefile 新增 version , 通过 tag 获取版本
  • 优化: 少量优化

欢迎使用 docker-compose 本地体验: 点击查看文档

所有生成命令均提供了参数简写,效果如下:

请在命令行下自行查看

原文链接:www.oschina.net/news/236178…

likeadmin基于「Spring Boot + ThinkPHP + FastAPI + Gin + TypeScript + Vue + Vite + Nuxt+ Element Plus + uni-app」实现的免费开源后台管理系统,拥有Java、PHP、Python、GO等多种后端语言版本,专业团队维护,值得信赖,欢迎下载体验。
开源地址:gitee-github.com/dfo5t9

官网文档地址:www.likeadmin.cn