jan
e0fad680a1
whitespace
2 years ago
jan
75adceda8b
Remove object locking/unlocking.
...
- It was *slow*. Often >50% of runtime for large designs.
- It didn't catch all corner cases. True immutability would require
language-level support.
- (minor) It doesn't play nice with type checking via mypy.
2 years ago
jan
457d1fc2f9
remove missing masque/VERSION from MANIFEST.in
2 years ago
jan
eb03935948
whitespace
2 years ago
Jan Petykiewicz
51b7021bdc
bump version to 2.7
2 years ago
Jan Petykiewicz
b188589b60
Fix / simplify some cases where the arc is a sector
2 years ago
Jan Petykiewicz
eb9682b1b8
Avoid calling new.unlock() in __deepcopy__()
...
since the new object's properties aren't necessarily deepcopied yet...
2 years ago
Jan Petykiewicz
48b28351ed
speed up GDS writing
...
by preallocating xy array and directly rounding to target dtype
2 years ago
Jan Petykiewicz
bfabd351c4
fix circular import
2 years ago
jan
4cc824526b
fix deepcopy for locked shapes
2 years ago
Jan Petykiewicz
e48183ee0b
dose==1 is the identity situation
2 years ago
Jan Petykiewicz
6886360f6d
fix getting displacements in Arbitrary repetition
2 years ago
Jan Petykiewicz
b5ddb5749c
fix calculation of displacements
2 years ago
jan
67d312162a
speed up as_pattern()
...
mainly used by `flatten()`
2 years ago
Jan Petykiewicz
97db83a1d5
add utils.vertices.poly_contains_points
2 years ago
Jan Petykiewicz
fd0b2ba4cd
no longer ignore numpy types
2 years ago
Jan Petykiewicz
9f1c7aea01
add _displacements to __slots__
2 years ago
Jan Petykiewicz
3640de27c7
Fix OASIS loading when strings are stored by-reference
2 years ago
Jan Petykiewicz
ed9b0df057
fix scaling for objects with repetitions
2 years ago
jan
a4aa50d814
fix another instance where numpy prohibits using `not bounds`
2 years ago
jan
2b8195ad3e
move dev2pat and pat2dev into masque.builder.port_utils
2 years ago
jan
36f6edac21
fix wrong var name
2 years ago
jan
210f5c21bc
wrap_device can be used on DeviceLibrary
2 years ago
jan
bfee560693
simplify type hints
2 years ago
jan
f4c2357737
fix type hint
2 years ago
jan
20be409341
fix numpy complaining about .any() / .all()
2 years ago
jan
d8b60da827
use_ours & use_theirs should be passed verbatim to the underlying library
2 years ago
jan
3b0ef1e08d
always couple LibDeviceLibrary keys to the underlying Library
...
See comment for why this is necessary
2 years ago
jan
7603a7a1c8
fix typevar naming
2 years ago
jan
0c1954c9d1
fix missing imports
2 years ago
jan
30025ba081
fixup dxf read
2 years ago
jan
5ef34794ff
keep ordering stable for same-y ports
2 years ago
jan
c8b4075fcc
Avoid circular import
2 years ago
jan
40b98b2511
add missing colon
2 years ago
jan
47d655d270
tutorial updates
2 years ago
jan
0471addd65
add get_bounds_nonempty
2 years ago
jan
780d1ca97f
export LibDeviceLibrary
2 years ago
jan
fc7a6c6f4a
fix some unused code
2 years ago
jan
81430fe632
add LibDeviceLibrary
2 years ago
jan
6a1208bc33
add some helper functions to libraries
2 years ago
jan
f36350ebee
Add some warnings around cache invalidation when mutating items
2 years ago
jan
2e5d51b0af
resolve name conflicts rather than just giving up
...
this lets us merge libraries without having to mutate `other`, which
brings a bunch of problems around cache invalidation
2 years ago
jan
566ba99f9c
set_const doesn't need to take in a separate key, can just use the pattern's name
...
might as well make the convenience function convenient
2 years ago
jan
86315fc32b
improve DeviceLibrary docstring
2 years ago
jan
f178e94d82
remove old overloads
2 years ago
jan
7612a2660c
add DeviceLibraryError
2 years ago
jan
b2a8a1749a
improve type checking and make some type-related fixes
2 years ago
jan
1515ed878f
use string ptypes
2 years ago
jan
40c81f53ed
reformat arg lists
2 years ago
jan
9b3b30b141
start work on tutorial
2 years ago