cython:e9fbd75590614f8f506d3ea94b9d93038b12a40a commitshttps://lab.nexedi.com/nexedi/cython/-/commits/e9fbd75590614f8f506d3ea94b9d93038b12a40a2020-12-10T18:37:36+01:00https://lab.nexedi.com/nexedi/cython/-/commit/e9fbd75590614f8f506d3ea94b9d93038b12a40aFix overload resolution ranking on cypclass arguments2020-12-10T18:37:36+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/be2d17baaff8f5ac5ed5c14f8088f4862aa93deeFix inheritance inspection for qualified cypclasses2020-12-10T18:37:36+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/6f1f493dcc7840e60c28ca6bbaa1aca71724d11aChange glyph for 'iso' viewpoint adaptation2020-12-10T18:37:32+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/2575a500b21d00e59c3094d467f9603b48e99582Avoid unnecessary reference counting around locks2020-12-10T18:36:30+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/a80ce03646cbafa8e7d38b230d821a9542026d79Introduce 'locked' qualifier and refactor locking2020-12-10T18:34:43+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/a66ffc4633313c16ee49b93d1d29f91bc3c748aeRefactor handling of new references2020-12-10T12:59:21+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/8cfda3ec77e2fe6e4cd035e153a65c19068d40c1Ensure cypclass results of subscript always end up decref-ed2020-12-10T12:58:20+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/85049a1ad5d7c910fd8fb395f8780a0481ca60d8Refactor cypclass viewpoint adaptation2020-12-10T11:14:00+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/28025b43fb34fa7cfee2219aa6704e5047b1a44dImprove compilation errors for 'consume' and cypclass aliasing2020-12-09T17:32:39+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/beb847ce17da8b9de7d320698ba861af970bc416Allow assigning NULL to qualified cypclass2020-12-09T17:32:39+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/777eb6260e5eb9f08a921a1c60e7654808f281b1Fix runtime isolation check on NULL pointer2020-12-09T17:32:39+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/0c42e8eb841a58867912f1dbf36e0bb47daf5d39Disallow conversions between pyobject and qualified cypclass types2020-12-09T17:32:39+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/3d681d3ecdc540cd786d8622b7fdf105aea235c6Fix viewpoint adaptation of the fields of and 'iso' cypclass2020-12-09T17:32:34+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/8f14ad8c28a0b147d076b47bfbcdf57435d1087fFix const-correctness of cypclass active methods2020-12-09T11:14:33+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/fb0630cfbbed5342152d934b179ea169b1b7fe8eRaise a proper exception when runtime isolation check fails2020-12-09T11:14:33+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/d9ca179cde4cc2e674addf05f99399b82597d344Optimise runtime isolation check implementation2020-12-09T11:14:33+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/a505e7ef309e5f1f01901429ff5f0325958ee58dCheck isolation only for non-sendable cypclass fields2020-12-09T11:14:33+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/f5984db3a9250ee2c89fb0de676f77f6fd81e12dImplement runtime isolation check on consuming non 'iso' cypclass2020-12-09T11:14:33+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/44056f3344c4f7b46bb11e7f7d27976268979383Fix generation of active methods for template cypclasses2020-12-09T11:14:33+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/8d153541c7cb4f44316f44fd825f93fef349dd3cFix attribute decref method in template cypclasses2020-12-09T11:14:33+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/4346720528b949b0d996106fb9de1fca9d07e8b7Optimise cypclass reference counting implementation2020-12-09T11:14:33+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/4484a4d9a0a162c7d809a9d88922772e883d9da1Let 'new' expression return 'iso~' cypclasses2020-12-09T11:14:33+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/11915abbea772481660c2e8cab2c182b112b3c57Introduce 'iso' qualifier and 'consume' keyword2020-12-09T11:14:29+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/b24fad38879822439cd3893b582a4f01a71fc71cExclude cypclass temporaries from cpp move semantics logic2020-12-04T20:13:21+01:00Xavier Thompsonxavier.thompson@nexedi.com
This reverts parts of commit:
'Optimise refcounting when assigning from a temporary cypclass'https://lab.nexedi.com/nexedi/cython/-/commit/967a395d886b910391e5490f0aa80dc8c55bf53eRefactor acthon implementation2020-12-03T19:07:56+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/acf56eff7d3ea9c2f2f706d558cadf7b2a29f454Refactor acthon implementation2020-12-02T20:22:10+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/904b7eee67443c540cc28c6a20cd953f9a4be2efRefactor acthon implementation2020-12-02T19:47:18+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/a4bc6221e593485c054b1e4008da042676ad9f40Introduce 'active' qualifier for cypclass references2020-12-02T18:12:23+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/03d7c50ce1617f8cb49af8eab38fd8a7b640a633Refactor coercion to locked cypclass nodes2020-11-03T21:12:10+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/f72728e7b7b6f7af65c82e04a7c0ecf4463eacb9Add a switch to postpone disposing of the subexpressions of temporary node2020-11-03T21:12:07+01:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/b05f5111146507757b7e509224cc3913f37807aaFix automatic locking for nested cypclass attribute access.2020-11-03T17:26:11+01:00Xavier Thompsonxavier.thompson@nexedi.com
Example of nested attribute access:
```
a.b.c.d
```
Before this commit, only the outermost object was properly locked when
accessing its attribute. For the inner objects which are themselves
attributes of outermore objects, the locks were released immediately
after being acquired and before accessing the object's attribute.
Pseudo code example:
```
lock a
temp_b = a.b
lock temp_b
unlock temp_b
temp_c = temp_b.c
lock temp_c
unlock temp_c
temp_c.d
unlock a
```
instead of:
```
lock a
temp_b = a.b
lock temp_b
temp_c = temp_b.c
lock temp_c
temp_c.d
unlock temp_c
unlock temp_b
unlock a
```https://lab.nexedi.com/nexedi/cython/-/commit/fe252709071cb2404d0085ea7d343491218adb82Remove redundant Cy_Ref_impl comparison operators2020-10-30T16:24:59+01:00Xavier Thompsonxavier.thompson@nexedi.com
This will fix clang 'ambiguous operation' errorshttps://lab.nexedi.com/nexedi/cython/-/commit/4aac93d945f4c279ab4af1df9dd49cae99a7787eFix analysis of inplace cpp / pyobject binary operations2020-10-15T15:03:06+02:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/eab0002bbb93d192e02582dc7fe2a262de3cd120Support declarations of cpp inplace operators like '+='2020-10-15T15:01:52+02:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/9572cd2d6f12ea8815a9d73698b0bcedd453789fAdd unit test for reference count of called-on cypclass subscripts2020-10-08T18:13:21+02:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/da3b60f37f3b33abba7b76a920090f0e10227fa4Remove invalid incref on locked cypclass subscripts2020-10-08T18:04:20+02:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/7df719aec159c399d0239b8ff8794f112cd10b6aAdd unit test for refcount of cypclass results of subscript operations2020-10-08T17:17:51+02:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/b4224faf7807aa766d3bea9ecd7242dee31b81d7Remove invalid increfs on cypclass result of subscript operation2020-10-08T16:44:07+02:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/31149c7e97caf2be4ecf98fdb5e00ef976707827Add unit test for refcount of cypclass loop variables2020-10-08T14:19:31+02:00Xavier Thompsonxavier.thompson@nexedi.comhttps://lab.nexedi.com/nexedi/cython/-/commit/a24068274344c6d05ce8da03b906287025174fe6Remove invalid incref on cypclass loop variable2020-10-08T14:16:47+02:00Xavier Thompsonxavier.thompson@nexedi.com