Commit Graph

283 Commits

Author SHA1 Message Date
Thomas Krijnen 06f5ded038 Don't crash on missing schema when loading rdb 2025-09-29 11:29:52 +02:00
Thomas Krijnen ab59173135 Add a stream2_from_string() (mostly for wasm) 2025-09-23 11:32:52 +02:00
Thomas Krijnen f659b9bb7b Fix exception in file.from_string() 2025-09-19 13:24:02 +02:00
Thomas Krijnen 23b48c43a6 Conditional compilation 2025-09-14 13:53:33 +02:00
Thomas Krijnen 9d99de2340 file.reset_identity_cache() function for adv use cases 2025-09-11 13:56:11 +02:00
Thomas Krijnen e68cc7201c Call init_locale() when streaming 2025-09-10 21:42:55 +02:00
Thomas Krijnen be79d3712d Initialize header after storage 2025-09-10 11:37:17 +02:00
Thomas Krijnen de8c8d3bed Rocksdb header parsing 2025-09-10 09:10:59 +02:00
Thomas Krijnen f8e523daff h| i| t| serialization consistency 2025-09-10 09:10:32 +02:00
Thomas Krijnen 59a5bf2344 RocksDB zstd encryption; cache tuning; readonly open mode 2025-09-03 11:11:55 +02:00
Thomas Krijnen a831884ee6 Free rocksdb iterators 2025-09-01 14:32:13 +02:00
Thomas Krijnen 01b64674ab Init max_id_ 2025-09-01 13:25:48 +02:00
Thomas Krijnen e6ea58cd72 Implement get_inverse_indices on rocksdb 2025-08-31 21:27:21 +02:00
Thomas Krijnen 55e54f0b37 Re-add token offset to failing declaration lookup in order to be picked up by validate.py 2025-08-31 16:01:28 +02:00
Thomas Krijnen e4d08ce6b7 Don't raise exception in file constructor 2025-08-31 15:52:46 +02:00
Thomas Krijnen dfaa8d510c authorisation -> authorization in header schema for compatibility 2025-08-29 16:08:42 +02:00
Thomas Krijnen 93c2a4fe66 That's what you get for not using a visitor 2025-08-29 14:15:58 +02:00
Thomas Krijnen df726a2d61 Initialization in various other constructor forms 2025-08-29 14:13:21 +02:00
Thomas Krijnen 9330e73a70 Call process_deletion_inverse() 2025-08-29 13:48:00 +02:00
Thomas Krijnen a73c60a467 Initialize guid map in case of empty file creation 2025-08-29 13:47:48 +02:00
Thomas Krijnen 3245d0af5c Serialization of header entities with #0= 2025-08-28 11:15:18 +02:00
Thomas Krijnen a65fa1e606 Fix failing inverse test 2025-08-28 09:37:09 +02:00
Thomas Krijnen c97a1faecd Initialize file schema to nullptr, wire up guid map 2025-08-27 15:14:20 +02:00
Thomas Krijnen 96336d6f68 Ugly conditional compilation for without rdb support 2025-08-26 13:56:03 +02:00
Thomas Krijnen 862aa71a77 Left-overs after merge 2025-08-26 10:20:08 +02:00
Thomas Krijnen e920379ca3 SFINAE for BaseClass* 2025-08-26 10:19:47 +02:00
Thomas Krijnen 9d9e9ed4cb Merge remote-tracking branch 'origin/v0.8.0' into tfk-rocksdb-storage 2025-08-26 10:17:57 +02:00
Thomas Krijnen d2c7c1532c Implement streaming scan through file and use in rocksdb serializer and python 2025-08-25 12:45:10 +02:00
Thomas Krijnen 2949a86f09 Properly initialize stream::eof #7045 2025-08-21 10:00:44 +02:00
Thomas Krijnen 952400bd58 Support defined types with instance references in parser (IfcPropertySetDefinitionSet; #6330) 2025-04-11 15:52:40 +02:00
Andrej730 0d7439c7a5 ifcopenshell.validate to catch invalid entities used in entities attributes #6409
Example

```
For instance:
    # 1 =IFCCARTESIANPOINT((5.,5.,nan.));
Entity with name 'nan.' not found in schema 'IFC4'
```
2025-03-25 18:15:37 +05:00
Thomas Krijnen c935b2fc12 Merge branch 'v0.8.0' into tfk-rocksdb-storage 2025-03-25 13:05:45 +01:00
Thomas Krijnen bd92821b2e Add file offset to instance reference errors so that they are picked up by ifcopenshell.validate 2025-03-25 11:44:46 +01:00
Thomas Krijnen 3744b81ccd Only accept finite floats #6409 2025-03-25 10:15:24 +01:00
Thomas Krijnen 425de7b857 Further small memory optimizations 2025-03-18 10:41:03 +01:00
Thomas Krijnen 929611f384 Specific speed-ups 2025-03-14 18:56:27 +01:00
Thomas Krijnen 8af4afa781 Do use merges, much better perf, instantiate inverses directly and generally, no longer copy map 2025-03-14 16:16:25 +01:00
Thomas Krijnen 10682fb226 Fix python binding 2025-03-14 10:20:22 +01:00
Thomas Krijnen df6b7a34f7 Auto-detect filetype 2025-03-13 13:09:39 +01:00
Thomas Krijnen 67932a22c3 Working non-streaming serializer and read-only model 2025-03-13 12:34:54 +01:00
Thomas Krijnen 9f49ad5f71 Non-streaming rocksdb serializer nearing completion 2025-03-09 21:20:16 +01:00
Thomas Krijnen ce4407ff3c Some successes writing and reading 2025-02-27 22:07:31 +01:00
Thomas Krijnen a420c4b707 Work towards serialization of data 2025-02-25 21:29:54 +01:00
Thomas Krijnen 048f77cfed Getting closer to working SPF again 2025-02-24 20:46:29 +01:00
Thomas Krijnen da4e86a1d5 Exploration of using rocksdb as file+instance storage 2025-02-21 16:12:16 +01:00
Thomas Krijnen 638b2c59ea Catch string encoding errors and set status #5992 2025-01-23 16:20:06 +01:00
Thomas Krijnen c37fd6ae0b Don't throw exception but set to $ when encountering invalid instance name #5680 2025-01-15 10:08:31 +01:00
Thomas Krijnen dbdc2add81 Parsing file with trailing comment fails 2024-11-14 21:57:27 +01:00
Thomas Krijnen 2c22421889 Don't consume token on invalid entity typename #5504 2024-09-29 19:15:29 +02:00
Thomas Krijnen a9ca4e7366 Mark status when parsing is terminated 2024-09-23 15:24:28 +02:00