-
Notifications
You must be signed in to change notification settings - Fork 6
/
CHANGES.txt
182 lines (148 loc) · 6.14 KB
/
CHANGES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
v0.9 - IN PROGRESS
- Added string parser for logic diagrams
- Fixed zooming of arc segments
- Added parameter for drawing schematic on existing matplotlib axis
v0.8 - 15-Aug-2020
- Changed Header anchors to `pinN` for consistency with Ic.
- Improved label placement with respect to anchor positions.
- Prevent duplicate figures from showing in Jupyter Element representation
- Improvements for headless server operation to prevent popup window
- Added some undocumented features to documentation
- Added `Drawing.get_imagedata` function for returning raw image bytes
- Fixed pip installation issue with module capitalization. Must import lowercase `schemdraw`.
v0.7.1 - 26-Jun-2020
- Bug fix: restore usage outside of Jupyter, so that Matplotlib window is shown when calling Drawing.draw().
v0.7 - 21-Jun-2020
- Dropped support for Python 2. Now requires 3.7+.
- Elements are now subclasses of Element. Previous (dict) element names are translated into
new class names. Any user-defined elements will need to be converted to classes.
The `group_elements` function is replaced with `ElementDrawing` class.
- Allow `fontsize` or `size` keyword arguments interchangeably in Drawing and add_label
- Updated flow.Decision to use keyword arguments for labeling decision branches
- The Ic element label offset parameter changed from `lblofst` to `lofst`
to avoid conflict with the main element label.
- Direct access to Drawing.fig and Drawing.ax are no longer available. Instead, Drawing.draw()
returns a schemdraw.Figure instance with fig and ax attributes.
- Implemented Jupyter representation functions for both Drawing and Element classes.
- New Elements:
- Coax
- Triax
- SwitchDpst
- SwitchDpdt
- Relay
- Optocoupler
- Arrow
- LineDot
- Breaker
- OrthoLines
- RightLines
- BusConnect
- BusLine
- Tag
- Photoresistor
- PhotoresistorBox
- Thermistor
- DiodeShockley
- PotBox
- RBoxVar
- Solar
- Neon
- SourceSquare
- AntennaLoop
- AntennaLoop2
- AudioJack
- Tgate
- Schmitt
- SchmittNot
- SchmittAnd
- SchmittNand
v0.6.0, 11-Feb-2020
- Refactored internals to allow more control over individual components of drawing.
Should have no effect unless the user is accessing internal attributes of the Element object.
This also adds the `segments` list to the Element object, which allows finer control over
individual bits of the drawing.
- Updated add_label so that "top" labels should always appear on top, regardless of flip/reverse
- Swapped the direction of current sources, so that a current source with direction "up" has the
arrow pointing up.
- Added "zorder" parameter in the element definition dictionary and `add` method
- Added `elements.ic` and `elements.multiplexer` functions as replacements to `blackbox` and `mux`.
These include more functionality such as adjusting indiviudal pin rotation, color, and inverter bubbles.
- Labels can be placed relative to an anchor position using the `add_label` method. This could be
useful, for example, in labeling pin numbers on a logic gate or opamp.
- Added new anchors to OPAMPs for power supply and offset nulls.
- New Elements:
- MIC
- MOTOR
- Documentation:
- Upgraded documentation to Sphinx and moved to readthedocs.org at https://schemdraw.readthedocs.io/en/latest/.
- Changed preferred import to `import SchemDraw.elements as elm`. Apparently some people still
use import * with pylab; this suggestion will help avoid conflicts.
v0.5.0, 21-Jul-2019
- Added flowcharting symbol methods to SchemDraw.flow module
- Added signal processing symbols to SchemDraw.dsp module
- Implemented fill parameter on Drawing.add to fill shapes and closed paths with a solid color
- New elements:
- Fuse
- CapacitorVar,
- DiodeTunnel
- Jfet
- Diac
- Triac
- SCR
v0.4.0, 03-Nov-2018
- Fixed drawing of NOT and related gates to property extend the path
- Fixed arrow translation when grouping elements
- Fixed sidelabels and plabels of blackbox when empty
- Fixed arc drawing due to change in Matplotlib 2.2 on asymmetric partial arcs
v0.3.0, 03-Jul-2017
- Added function for drawing multiplexers/demultiplexers
- Updates to labelI() method to allow reversing arrow and changing length
- Add CSS to documentation
- New elements:
- PHOTODIODE
- NFET4
- PFET4
- VSS
- VDD
v0.2.2, 06-Mar-2016
- Documentation updates
- New elements:
- Transformer
- Josephson Junction (JJ)
v0.2.1, 03-May-2015
- Fixed anchor names when element overwrites base anchor, such as BJT_PNP.
- Added showplot keyword to draw() for non-interactive mode.
- Added 2-collector BJT.
- Documentation: added gallery of schematics.
v0.2.0, 29-Apr-2015
- Added default line width argument to drawing() class. Default width is now 1.5.
- Converted documentation to use all vector-based images
- Added XKCD-mode example
- New elements:
- BATTERY
- BAT_CELL
- SPEAKER
- BUTTON
- BUTTON_NC
- XTAL
- MEMRISTOR,
- SCHOTTKY
- ZENER
- LED2
v0.1.4, 30-Sep-2014
- Add function to group several elements into one
- Add blackbox() function to generate box elements with arbitrary inputs
- Allow element definition to specify label alignment
- Added linestyle to element kwargs and definition
- New elements:
- LED
- OPAMP_NOSIGN
- GAP_LABEL
- ELLIPSIS
v0.1.3, 21-Sep-2014
- Added logic gate elements
- Added transparent and dpi options to save() function
- Fixed issues with zooming and rotating elements with arcs
- LaTeX typesetting uses sans-serif, regular fonts for consistency
v0.1.0, 25-Aug-2014
- Initial Release