首页 文章 精选 留言 我的

精选列表

搜索[PaaS框架],共10000篇文章
优秀的个人博客,低调大师

SQLAlchemy 1.4.13 发布,Python ORM 框架

SQLAlchemy 是 Python SQL 工具箱和对象关系映射器,它为应用程序开发人员提供了 SQL 的全部功能和灵活性。它提供了一整套知名的企业级持久性模式,旨在高效、高性能地访问数据库,并被适配为一种简单的 Pythonic 域语言。 SQLAlchemy 1.4.13 版本的更新内容如下: orm [orm] [bug] [regression] 修正了 selectinload 加载器策略的回归,当处理跨多列连接的关系时,例如使用复合外键时,会导致它不正确地缓存其内部状态。无效的缓存会导致其他无关的加载器操作失败; [orm] [bug] [regression] 修正了回归,即如果主导实体是一个 SQL 函数或其他从相关主实体派生的表达式,而不是一个简单的实体或该实体的列, Query.filter_by() 将无法工作。此外,改进了 Select.filter_by() 的行为,使其即使在非 ORM 环境下也能与列表达式一起工作。 [orm] [bug] [regression] 修正了使用 selectinload() 和 subqueryload() 加载一个两级深度的路径会导致属性错误的问题。 [orm] [bug] [regression] 修正了在使用 noload() 加载器策略和 "动态"关系时,会导致属性错误的问题,因为 noload 策略会试图将自己应用到动态加载器上。 asyncio [asyncio] [bug] [regression] 修正了 #6337 引入的一个回归,即在任何 asyncio 循环启动之前实例化 asyncio 引擎时,会创建一个 asyncio.Lock,它可能被附加到错误的循环中,导致在某些情况下试图使用该引擎时出现 asyncio 错误信息。 postgresql [postgresql] [usecase] 在 PostgreSQL 的 pg8000 dialect 中增加对服务器端游标的支持。这允许使用 Connection.execution_options.stream_results 选项。 更多详情可查看:https://docs.sqlalchemy.org/en/14/changelog/changelog_14.html#change-1.4.13

优秀的个人博客,低调大师

SQLAlchemy 1.4.11 发布,Python ORM 框架

SQLAlchemy 是 Python SQL 工具箱和对象关系映射器,它为应用程序开发人员提供了 SQL 的全部功能和灵活性。它提供了一整套知名的企业级持久性模式,旨在高效、高性能地访问数据库,并被适配为一种简单的 Pythonic 域语言。 SQLAlchemy 1.4.11 版本的更新内容如下: orm declarative: [orm] [declarative] [bug] [regression]: 修正了最近支持 Python 数据类的变化所带来的回归问题,即 ORM 映射的类无法成功覆盖 __new__() 方法; 引擎: [engine] [bug] [regression]: 修正了 #5497 中的变化所导致的关键性回归,即连接池的 "init" 阶段不再发生在互斥隔离中,这使得其他线程可以在 dialect 未初始化的情况下继续进行,这可能会影响 SQL 语句的编译。 更多详情可查看:https://docs.sqlalchemy.org/en/14/changelog/changelog_14.html#change-1.4.11

优秀的个人博客,低调大师

SQLAlchemy 1.4.8 发布,Python ORM 框架

SQLAlchemy 是 Python SQL 工具箱和对象关系映射器,它为应用程序开发人员提供了 SQL 的全部功能和灵活性。它提供了一整套知名的企业级持久性模式,旨在高效、高性能地访问数据库,并被适配为一种简单的 Pythonic 域语言。 SQLAlchemy 1.4.8 版本的更新内容如下: orm: [bug] 修复了涉及with_expression()加载程序选项的缓存泄漏,该泄漏不会正确地将给定的 SQL 表达式视为缓存键的一部分。此外,修复了涉及相应query_expression()特征的回归 。虽然从技术上讲该 bug 也存在于 1.3 中,但直到 1.4 才暴露出来。当不需要时,null()的"default expr"值会被呈现出来。另外,当 ORM 重写语句时,如使用 jianed eager loading 时,也不能正确适应。该修复确保了像 null 和 true 这样的表达式不会被"适配"为 ORM 语句中的列引用,另外确保了如果没有使用 with_expression(),没有默认表达式的 query_expression() 不会在语句中呈现。 [bug] 修正了#1763引入的 Session.refresh() 新特性中的问题,急于加载的关系也会被刷新,其中 lazy="raise" 和 lazy="raise_on_sql" 加载器策略会干扰 immediateload() 加载器策略,因此对于用 selectinload()、subqueryload() 加载的关系也会破坏该特性。 引擎: [bug] Dialect.has_table() 方法现在会在传递一个 non-Connection 时引发一个信息异常,因为这种不正确的行为似乎很常见。这个方法不打算用于 dialect 之外的外部使用。请使用 Inspector.has_table() 方法,或者为了与旧版本的 SQLAlchemy 交叉兼容,使用 Engine.has_table() 方法。 sql: [feature] CursorResult.inserted_primary_key 返回的元组现在是一个 Row 对象,在现有的元组接口之上有一个命名的元组接口。 [bug] 修正了一个回归问题,即如果 BindParameter 对象是从内部克隆操作或从 pickle 操作中复制过来的,并且参数名中包含空格或其他特殊字符,则 BindParameter 对象不能正确地渲染 IN 表达式(即使用1.4中的 "post compile "功能)。 [bug] 修正了引入 INSERT 语法 "INSERT......VALUES (DEFAULT) "在一些支持 "INSERT......DEFAULT VALUES "的后台不支持的问题,包括 SQLite。现在,这两种语法在每个 dialect 中都被单独支持或不支持,例如,MySQL 支持 "VALUES (DEFAULT)",但不支持 "DEFAULT VALUES"。 mypy: [change] 更新了Mypy插件,使其仅使用语义分析器的公共插件接口。 [bug] 修改了 1.4.7 版本的 OrderList 的修正,因为它是针对不正确的 API 测试。 asyncio: [bug] 修正了防止将AsyncSession的绑定属性设置为正确值的排印错误。 mssql: [bug] [regression] 修正了一个与 #6173、#6184 相同领域的额外回归,即在 SQL Server 中使用 OFFSET 的值为 0 与 LIMIT 结合,会创建一个使用 "TOP" 的语句,就像 1.3 中的行为一样,然而由于缓存的原因,会导致无法对 OFFSET 的其他值做出相应的响应。如果不是 "0" 在先,那么就可以了。对于修复,现在只有在完全省略 OFFSET 值的情况下才会发出 "TOP" 语法,即不使用 Select.offset()。需要注意的是,现在这个变化要求,如果使用了 "with_ties" 或 "percent" 修饰符,语句不能指定 OFFSET 为 0,现在需要完全省略。 更多详情可查看:https://docs.sqlalchemy.org/en/14/changelog/changelog_14.html#change-1.4.8

优秀的个人博客,低调大师

SQLAlchemy 1.4.7 发布,Python ORM 框架

SQLAlchemy 是 Python SQL 工具箱和对象关系映射器,它为应用程序开发人员提供了 SQL 的全部功能和灵活性。它提供了一整套知名的企业级持久性模式,旨在高效、高性能地访问数据库,并被适配为一种简单的 Pythonic 域语言。 SQLAlchemy 1.4.7 版本的更新内容如下: orm [bug] [regression] 修正了 subqueryload() 加载器策略在 subqueryload 的 "路径"超过一级深度时,无法正确容纳子选项的问题,例如列上的 defer() 选项; [bug] [regression] 修正了 dogpile.caching 示例所依赖的 merge_frozen_result() 函数未被包含在测试中,并且由于内部参数不正确而开始失败的回归问题; [bug] [regression] 修正了一个关键的回归问题,即当刷新发生时,在没有现有事务的情况下,Session 可能无法 "自动开始"一个新的事务,从而隐含地将 Session 置于传统的自动提交模式,从而提交事务。现在,Session 除了修复刷新问题外,还有一个检查,可以防止这种情况发生; [bug] [regression] 修正了 ORM 编译方案假设混合属性的函数名与属性名相同的回归问题,当它试图确定结果元组中每个元素的正确名称时,会引发 AttributeError。类似的问题在 1.3 中也存在,但只影响元组行的名称。这里的修复增加了一项检查,即在分配这个名称之前,检查混合体的函数名是否确实存在于类或其超类的 dict 中;否则,混合体被认为是 "未命名的",ORM 结果元组将使用底层表达式的命名方案。 [bug] [regression] 修正了作为 #1763 的一部分添加的新特性引起的关键回归,eager loaders 在未到期操作上被调用。新特性利用 "immediateload" eager loaders 策略来替代集合加载策略,与其他"后加载"策略不同的是,该策略不适应相互依赖关系之间的递归调用,导致递归溢出错误。 sql [bug] [regression] 增强了用于 ColumnOperators.in_() 操作的"扩展"功能,如果左侧没有设置任何显式类型,则从右侧元素列表中推断表达式的类型。这使得表达式可以支持字符串化等功能。在 1.3 中,ColumnOperators.in_() 表达式并没有自动使用 "expansion",所以从这个意义上来说,这个变化修复了一个行为上的回归。 [bug] 修正了"stringify"编译器,以支持"多行" INSERT 语句的基本字符串化,即在 VALUES 关键字后有多个元组的语句。 schema [bug] [regression] 修正了在 Connection.execute_options.schema_translate_map 字典中使用包含特殊字符(如大括号)的标记时无法正确替换的问题。方括号字符 [] 的使用现在被明确禁止,因为在当前的实现中,这些字符被用作定界符。 mypy [bug] 修正了 Mypy 插件中的问题,即插件没有为不直接从 TypeEngine 下传的子类的列推断正确的类型,特别是 TypeDecorator 和 UserDefinedType 的类型。 misc [change] [tests] 在 DefaultDialect 中添加了一个名为 supports_schema 的新标志;当为第三方 dialects 运行测试套件时,第三方 dialects 可以将该标志设置为 True,以启用 SQLAlchemy 的模式级测试。 更多详情可查看:https://docs.sqlalchemy.org/en/14/changelog/changelog_14.html#change-1.4.7

优秀的个人博客,低调大师

Angular 11.2.9 发布,Web 前端框架

Angular 11.2.9现已发布,具体更新内容如下: Bug 修复 bazel:在tslib上添加缺少的依赖项(#41480)(8d005e5),closes11.2.8/src/api-extractor/index.js#L20 compiler-cli:允许继续分析无效的样式 url(#41403)(#41489)(07131fa) compiler-cli:修复从非相对扩展较少的 TypeScript 配置文件中扩展 angularCompilerOptions 的问题(#41349)(e0165fd),closes#41343 Features bazel:允许在ng_module规则中设置compilationMode(#41418)(e6da38a) Performance Improvements core:在运行时执行的用户代码周围添加 private hooks(#41421)(94af9d9) language-service:将性能跟踪添加到 LanguageService(#41401)(7b0a800) 详情可查看:https://github.com/angular/angular/blob/master/CHANGELOG.md#1129-2021-04-07

优秀的个人博客,低调大师

SQLAlchemy 1.4.3 发布,Python ORM 框架

SQLAlchemy 是 Python SQL 工具箱和对象关系映射器,它为应用程序开发人员提供了 SQL 的全部功能和灵活性。它提供了一整套知名的企业级持久性模式,旨在高效、高性能地访问数据库,并被适配为一种简单的 Pythonic 域语言。 SQLAlchemy 1.4.3 版本的更新内容如下: orm 修正了一个 python 2.7.5(CentOS 7 上的默认版本)无法导入 sqlalchemy 的 bug,因为在这个版本的 Python 上, exec "statement" 和 exec("statement") 的行为方式并不相同。我们使用了兼容性的 exec_() 函数来代替。 修正了一个当在属性中使用 Select.correlate_except() 来控制相关性时,使用相关子查询和 column_property() 的 ORM 查询将无法正确地关联包围子查询或 CTE 的错误。 修正了新的“relationship with criteria”功能与使用新的“lambda SQL”功能(包括 selectinload 和 lazyload 等加载器策略)的结合可能会失败的 bug,以应对多态加载等更复杂的情况。 修复了对 ClauseElement.params() 方法的支持,使 ClauseElement.params() 方法能够正确地与 Select 对象一起工作,该对象包括跨 ORM 关系结构的连接,这是 1.4 中的一个新特性。 修正了关系加载器机制内部产生"在 2.0 中删除"警告的问题。 orm declarative 修正了每类级别上的 .metadata 属性不会被遵循的回归问题. engine 将 ResultProxy 名称恢复到 sqlalchemy.engine 命名空间。这个名字指的是 LegacyCursorResult 对象。 mypy 添加了对 Mypy 扩展的支持,以正确解释使用 as_declarative() 函数以及 registry.as_declarative_base() 方法生成的声明式基类。 修正了 Mypy 插件中 Python 类型检测 Boolean 列类型会产生异常的错误;另外实现了对 Enum 的支持,包括检测基于字符串的枚举与使用Python enum.Enum。 postgresql 修正了在 PostgreSQL 中,表的身份列在混合大小写名称中的反映。 sqlite 增加了对与 SQLAlchemy asyncio 扩展一起使用的 aiosqlite 数据库驱动程序的支持。 修复了在 1.4 版本中退步的 pysqlcipher dialect,使其正确连接,并增加了测试 + CI 支持,使驱动保持在工作状态。现在 dialect 默认导入 Python 3 的 sqlcipher3 模块。 更多详情可查看:https://docs.sqlalchemy.org/en/14/changelog/changelog_14.html#change-1.4.3

优秀的个人博客,低调大师

SQLAlchemy 1.4.0 发布,Python ORM 框架

SQLAlchemy 是 Python SQL 工具箱和对象关系映射器,它为应用程序开发人员提供了 SQL 的全部功能和灵活性。它提供了一整套知名的企业级持久性模式,旨在高效、高性能地访问数据库,并被适配为一种简单的 Pythonic 域语言。 在经历了 1.4 系列的三个测试版之后,1.4.0 版本终于正式发布了。它对核心和 ORM 中最突出的 API 进行了重大的重新思考,对内部结构进行了大量的修改,并提供了大量重要的新特性和功能。 SQLAlchemy 1.4 确立了自己作为 SQLAlchemy 2.0 项目的起点,该项目将完全转移到 Python 3 上,并最终确定 1.4.0 版本中引入的新 API。 SQLAlchemy 1.4.0 最主要的亮点包括: 用于为 Core 和 ORM 生成 SELECT 和其他 SQL 语句的方法现在统一在一个经过修改且功能更强大的 select() 构造上。因此,针对 Core 或 ORM 上下文的 SQL 查询现在可以使用相同的 API 和模式来组成。Session.execute() 和 Connection.execute() 方法已被调整,因此 Core 和 ORM 查询和结果集之间的转换是无缝的,两个系统的行为与彼此的实际情况相似。新的强调明确性和不含糊的一致性,目的是让学习和使用 SQLAlchemy 更加直接,同时也支持新的 Python 范式,如 asyncio 和 PEP-484 类型; 修订后的声明式映射系统为许多新的映射范式提供了支持,包括使用装饰器而不是基类的映射类,对 Python 数据类的明确支持,以及"命令式映射",它是与声明式类注册表集成的经典映射器 mapper() 操作的改进版本; 对 Core 和 ORM 的 SQL 编译进行通用和完全透明的缓存。这取代了之前版本的 "baked 查询缓存"系统,该系统为 ORM 提供了一个可选的 SQL 缓存系统,新的方法是完全透明的,并为 Core 和 ORM 中的绝大多数 DML 和 DQL 语句启用。该系统不仅可以缓存语句的即时 SQL 字符串,还可以缓存其相关的结果处理基础架构,该基础架构用于为每个查询生成新的行和 ORM 对象实例; 为 Core 以及 ORM 新修订的模型,它更易于使用,消除了已经变得混乱的传统 API,并以比以前更一致的方式运行。新的模型将是 SQLAlchemy 2.0 中唯一的模型,目前通过将 future=True 标志传递给 create_engine() 函数以及 Session() 构造函数,可以在 1.4 下完全启用; 完全支持 Python asyncio 的 Core 和 ORM。这个新系统利用 greenlet 上下文切换库来调整 SQLAlchemy 的全部内容,使其可以在一个 asyncio 前端使用,同时在 asyncio 事件循环中直接对 asyncio 数据库驱动进行操作,而不需要线程执行器。目前已经包含了对 asyncpg 和 aiomysql 的支持,更多的驱动正在开发中; 大幅提高了 ORM 查询的可扩展性,使用了新的钩子和选项,包括 SessionEvents.do_orm_execute() 钩子和 with_loader_criteria() 函数,可以可靠地、可预测地拦截和修改所有带有附加条件的 ORM 查询; 对 PEP-484 和 Mypy 的原生支持现在正在开发中,其中包括一个全新的 Mypy 插件的 alpha 版本,它与新发布的 stubs 库 sqlalchemy2-stubs 一起运行。 1.4.0 版本的完整变更日志可查看:https://www.sqlalchemy.org/changelog/CHANGES_1_4_0

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册