FreePCB release notes: (versions since 1.2)
-------------------------------------------

1.353
-----
- when entire net selected, copper areas are highlighted
- when copper area or side is selected, pressing "n" selects entire net
- added "combine nets" function
- fixed bug with "View All" and "View Board" commands
- when the default library folder is changed in Project Options, it takes effect immediately
- when a new project is created, the project file is saved immediately
- the Add Pin dialog can now set the position of a pad corner or edge (contributed by Pete Koziar)
- checks for headers with 28 mil holes and shows a warning
- with a trace, trace segment, copper area side or copper area corner selected, shift-n moves item to layer n

1.352a
------
- fixes a bug that caused crashes when editing a footprint and then assigning it to multiple parts

1.351a
------
- fixes a bug that caused crashes when editing a part that didn't have a footprint assigned

1.350a
------
- fixes a bug introduced in 1.349a, that could prevent clearances being drawn on inner copper layers

1.349a
------
- fixes bug that caused crashes, usually when creating Gerber files for iner layers

1.348a
------
- revised Tab Order for all dialogs
- for DRC and CAM dialogs, closing with "Done" always saves settings
- window state, size and position are saved in the registry for next time
- fixed bug where undo could be disabled following a dragging operation
- fixed bug which caused a crash on moving a part with ref visibility off
- added pin1 position to report file
- tab order for all dialogs redone
- fixed bug where editing pin in footprint editor could not be undone

1.347a
------
- fixed bug where various part attributes were not read correctly from project files

1.346a
------
- fixed bug where FreePCB would crash on opening a project that had parts with no footprint

1.345a
------
- fixed bug where values were not drawn in the gerber file
- fixed bug where text following "*END*" in a netlist file could cause problems

1.344a
-----
- implemented a "value" attribute for parts, which can be displayed on the silkscreen layer
- added support for values in netlists
- improved the "Project->Partlist" and "Project->Netlist" dialogs to maintain sort order after editing
- the Footprint Editor now allows solder mask and solder paste clearances to be defined as pads in the padstack
- the Footprint Editor now allows connectivity of pads with copper areas to be specified per pin
- for existing footprints, the inner pad definitions are set to "PAD_NONE" to conform to past behavior
- for newly created footprints, the inner pads can be defined if needed
- all pads are now represented in Gerber files as apertures instead of polygons
- in the status bar, the part angle is reported in degrees CCW
- a "centroid axis" has been added to footprints, used to define the part angle
- part angles in the report file can be reported as viewed from the top or the bottom, CW or CCW
- the Project->Options dialog has a field for the default width of adhesive dots
- adhesive dots can be added to footprints in the Footprint Editor
- if not explicitly added, a default adhesive dot is placed at the centroid of SMT parts
- the report file now includes adhesive dots
- the visibility of the reference designator can now be set directly, instead of setting its size = 0
- some new function keys and menu items have been added for rotating parts, values and ref text
- increasing the size of solder mask cutouts by the solder mask clearance is now an option in the CAM dialog

1.343
-----
- fixed a bug that produced errors in the centroid positions of parts in the report file.

1.342
-----
- fixed a bug in panelization where there could be errors in registration with the drill file if the board outline was not in mils.

1.341
-----
- added support for F1, F2 and F3 codes in .des file generator
- fixed bug where pasting a group with copper area cutouts could fail
- fixed bug that could crash on pasting a group where the last segment of a trace didn't match the end pin
- origin symbol restored to a reasonable size
- fixed bug that could crash DRC on very short segments
- added movable centroid to footprint

1.340
-----
- fixed bug that could cause crashes on right-clicking

1.339
-----
- added project option to control connection of SMT pads to copper areas
- added project setting for adhesive dot diameter
- added "File->Generate Report file..." function
- added button in "Project->Nets..." to delete nets with no pins
- fixed bug where footprint names could be duplicated in a library file
- fixed bug where footprint selection rectangle didn't include text
- fixed bug where changing trace width for a net would affect existing traces
- fixed crash on cancelling placement of the first corner of a board outline
- fixed bug in DRC code for hole-trace violations
- improved code for disabling menu items, removed OnCmdMsg handler
- removed assertion in ReadNets that could get tripped when loading .ses file

1.338
-----
- hopefully, fixed bug that could cause crash on closing program

1.337
-----
- added UI support for 16 copper layers
- added option to repeat DRC without dialog

1.336
-----
- fixed bug where the Open File dialog would appear twice
- fixed bug where FreePCB would crash on closing
- added quotes to command line for FpcROUTE

1.335
-----
- added "Edit Area" function to change the layer, hatch style and net assignment of copper areas
- added "Show Part" to context menu for ref text
- fixed bug where moving a vertex with F1 could not be undone
- fixed bug where via size could change if a nearby vertex were deleted
- fixed bug where changing the project name would also change the folder
- fixed bug where trailing spaces in footprint name would cause crash
- fixed bug where top-level menus were grayed but not really deselected with no project open

1.334
-----
- fixed bug where text in footprint was drawn with wrong width
- changed display resolution to 0.1 mil for Win2000, XP and Vista
- when moving items with arrow keys, new position shown in status bar
- removed debug code that dumped cursor position to log window

1.333
-----
- now accepts *PADS2000* as well as *PADS-PCB* netlists
- in rows of pins added in footprint editor, can specify increment
- redo added to footprint editor
- fixed bug where "Save Footprint" could crash if log window not initialized
- fixed bug with .PNG file options in CAM dialog
- fixed bug with undo/redo of text operations

1.332
-----
- fixed bug where groups of text could not be copied
- added measurement tool
- now hides cursor arrow when using cross-hair cursor
- added negative text on copper layers
- added options to the CAM dialog to render gerber files
- Show Part now comes up with ref des field selected for entry

1.331
-----
- fixed several bugs in the undo code
- for most operations, "redo" can now be performed after "undo"
- fixed a bug where Group->Paste would only work with a group selected
- added right-click to cancel Move Origin in Footprint Editor
- added code for Group Rotate (thanks to Henryk)

1.330
-----
- fixed bug where minimum silkscreen line width was applied to text on copper layers
- "Move Origin" implemented in Footprint Editor
- dialogs for library files now use file names, not full paths
- fixed a bug where vias were not generated at some tee-vertices
- fixed a crash when trying to save to a non-existent device

1.329
-----
- bug fixed that could create wrong clearances for pins in copper areas
- code for importing .ses files improved

1.328
-----
- fixed several bugs when editing polylines in footprints
- fixed bug where the tree control in the Add->Part dialog wouldn't remember its state correctly
- the Project->Part_List dialog can now be sorted by reference designator, etc.
- traces can be selected by pressing "t" with a segment or vertex selected
- nets can be selected by pressing "n" with a segment, vertex or pin selected
- with a trace selected, the status bar shows the trace length
- when panelizing, the drill file has been reordered to minimize tool changes
- the Help->Keyboard_Shortcuts dialog has been updated
- link to PDF version of User Guide added to Help menu
- default thermal angle is now 45 degrees, with 90-degree option in CAM dialog
- space character is now always the same width
- when adding pins to a net in the "Add/Edit Net" dialog, if you press Enter the dialog doesn't close
- selecting a part also highlights the reference designator
- the behavior of File->Import_.ses_file has been changed. Now, the current project is saved to a temporary file, FpcROUTE is called, and its output project file is renamed and loaded.

1.327
-----
- fixes a bug where the selection rectangle would not be resized when editing a footprint, unless the footprint was saved to a file
- fixes a bug where changing the sizes of vias in a net would also resize the traces
- adds panelizing to the CAM dialog
- adds solder paste mask Gerbers
- adds a board outline Gerber
- changes importing session files from an autorouter, so that the routing is redone by FreePCB after loading the merged project file from FpcROUTE

1.326
-----
- fixes a bug where filenames containing spaces were not handled correctly by the export .dsn and import .ses functions.
- the user is now asked whether to save the project file when exporting, if the project has changed.

1.325
-----
- adds support for importing and exporting files from/to the FreeRoute web-based autorouter. It also allows you to launch the autorouter from FreePCB.

1.324
-----
- reverted back to the VC++.net 2003 compiler due to problems with manifests.
- groups can now be deleted.
- a project file can be pasted into another project as a group.
- renaming of nets when pasting a group has been improved.
- the Project->Options dialog allows changing the project name, default library and number of layers.
- if you decrease the number of layers, a dialog appears that allows you to reassign, combine or delete the existing layers.
- the CAM output folder can now be changed more easily.

1.323
-----
- compiled with VC++.net 2005
- fixes a few bugs.

1.322
-----
- fixes a few bugs that affected importing netlists into existing projects.

1.321
-----
- traces and copper areas are now preserved as much as possible when importing a netlist into an existing project, even if the net names have changed.
- several bugs are fixed that affected routing from pads on the bottom layer of edge connectors
- previously, if you were routing a ratline or a stub trace from a pin and you placed the first vertex within the outline of the starting pad, FreePCB would terminate the trace on the starting pin, creating a small circular trace. Circular traces are still allowed, but now they have to have at least 3 segments which should eliminate this problem.

1.320
-----
- fixes several bugs.
- when routing from non-grid points, FreePCB automatically generates an initial "dogleg" trace segment which is a combination of a vertical/horizontal segment and a segment at the snap angle. The end-point will always be on the grid. If you hold down the SHIFT key, the order of the segments will be reversed. If you hold down the CTRL key, FreePCB will revert back to its previous behavior of snapping to grid lines.
- when you save a project file, FreePCB will automatically rename the original file with the extension ".bak" before saving the new version.
- when autosaving, the project file will be saved in a subfolder of the project folder named "Autosave", with an extension between ".001" to ".025".

1.319
-----
- corrects several bugs related to nested coper areas and clearances around traces passing through copper areas.
- setting an SMT pad shape to "none" no longer crashes the "add/edit pin" function in the Footprint Editor.
- when editing a footprint with SMT pads on both the top and bottom layers, you can preserve the layer of the pads when applying your edit to multiple pins.

1.318
-----
Several bugs fixed:
- clearances for pads overlapping the edges of copper areas were not drawn correctly if the pad didn't use a thermal relief
- there was an error in the code for drawing copper areas inside cutouts in other copper areas
- clearances for pads overlapping the edges of copper areas inside cutouts were not drawn correctly

1.317
-----
2 bugs fixed:
- no dragging ratlines when moving a part
- a bug in "Add/Edit Part" that caused errors when adding or editing parts in the release version.

1.316
-----
- bug fixed

1.315
-----
Fixes the following bugs:
- undoing creation of a board outline or footprint polyline could leave an invisible polyline with one corner
- multiple board outlines were saved incorrectly
- clicking on the F9 button didn't work
- the CAM folder wasn't remembered after closing the dialog
- holes without pads were covered by the solder mask
- pads that extended beyond copper areas that they were connected to could create clearance violations or shorts to adjacent areas on other nets
- crashes on group operations

1.314
-----
- some bugsfixed
- improved support for branching traces.
- the function key menu has been changed slightly, with F9 now used for recalculating ratlines. This allows a more uniform assignment of the other keys.
- the Gerber format has been changed from 2.6 to 2.4. This means that the resolution of the Gerber files is now 0.1 mil instead of 0.001 mil. If this creates a problem for anybody, please let me know.

1.313
-----
- bugs fixed

1.312
-----
- projects can contain multiple board outlines.
- group copy/paste now handles all of the elements of the PCB, including board outlines. Therefore, it can be used to panelize a project.
- traces can have branches. To create a branch from a trace, select a vertex and press F3 (Connect Pin). Then draw the ratline to a pin on the same net (or unassigned). Then route the ratline as usual. Alternatively, a stub trace from a pin can be drawn to a vertex in a trace on the same net.

1.311
-----
- fixes a bug where zero-length stub traces were mistakenly deleted when saving a project.
- copper areas can now be placed inside cutouts in other areas.

1.310
-----
- bug fixed

1.309
-----
- fixes a bug in the group copy and paste commands where the part reference positions were not copied correctly.

1.308
-----
- adds copy and paste operations for groups of parts and traces.

1.307
-----
- fixes a bug which could cause saving a project to fail if there were connections consisting of a single zero-length segment.
- a new function "Tools->Check traces" has been added.

1.306
-----
- checks netlist files for PADS-PCB format before importing them.
- several bugs fixed

1.305
-----
Fixes a few bugs:
- routing a ratline to a different pin on the same net was sometimes handled incorrectly, resulting in a spurious connection
- when moving a part, ratlines were sometimes drawn incorrectly
- when adding a vertex to a segment, the cursor didn't include 45-degree reference lines
- removing a vertex from a trace could cause crashes if there were adjacent unrouted segments
- also, the Help->About dialog now indicates whether you are running a debug or release version

1.304
-----
Fixes two bugs:
- crashes on file operations when the Windows group policy "Do not keep history of recently opened documents" is enabled
- on some Group Move operations, stub trace segments were not made visible after the move

1.303
-----
- includes a patch by Arlen Cox that improves routing from off-grid points. Previously, if you were starting from an off-grid point, the snap angle would be disabled so you could get back on the grid. Now, the snap angle is maintained but you can snap to grid lines as well as points. This allows you to get back on the grid in a few segments without any funny angles. Please try it out and let me know what you think!
- a bug is fixed where the DRC would catch overlapping copper areas UNLESS one copper area was completely contained by the other.

1.302
-----
- several bugs are fixed, including errors in the DRC code for copper areas.
- some operations on copper areas are quite a bit faster
- cleaned up the code for vias. Previously, via sizes were actually a property of the adjacent segments, which didn't really make sense. Now, you can set the sizes of individual vias with F2 (Set Via Size). For end-vias on stub traces, where F2 was already used, you can use the right-click menu.
- the dialogs for setting trace and via widths now allow you to modify traces and vias independently. For example, with "Project>Nets>Change width(s)", you can change the size of all of the vias on multiple nets without affecting the trace widths, or vice versa
- you can add a vertex to a trace segment with F4 (Add Vertex), and when you delete a vertex between two routed segments on the same layer, they are replaced by a single routed segment (as suggested by NogginBoink and ChartreuseDog)
- Edit->Part now allows you to change the reference designator of the part (this was a highly-requested feature)
- Change Layer function added for copper areas

1.301
-----
- fixes a bug where pin names not ending in a number were not handled properly in the Footprint Editor.
- copper areas on the same net are checked for intersections after most editing operations, and automatically combined if possible.
- Tools->Combine Copper Areas menu item has been renamed Tools->Check Copper Areas, but it still combines intersecting areas if it finds them.

1.3
---
- fixes a bug where reimporting a netlist would result in traces between pins of a part being unrouted.
- a lot of changes in the code for copper areas.

1.205
-----
Fixes 2 bugs:
- crashes when making Gerber files with copper areas containing multiple arcs
- crashes if a footprint was created using mm but saved using mils, then the project was routed, saved and reopened.
When routing you can "back up" using the backspace key.

1.204
-----
- fixes a bug where FreePCB wouldn't find the default library folder if it was started from a shortcut that didn't specify the "start in" folder, and no project was loaded.
- fixes a bug where changing the shape of copper area sides wouldn't undo correctly, and a bug where adding a new pin in the Footprint Editor couldn't be cancelled by right-clicking and then wouldn't undo correctly.

1.203
-----
- corrects a few bugs in the Footprint Editor, mainly affecting the editing of pins.
- in the Add/Edit Pin dialog, you can apply new pin settings to existing pins.

1.202
-----
Corrects the following bugs:
- moving the origin when no board outline was defined caused a crash
- adding a part and dragging to position, then cancelling, then undoing with ^Z caused a crash
- in the Footprint Editor, adding a new pin caused a graphics glitch
- when creating a new project with > 4 layers, the colors for the copper layers were incorrect

1.201
-----
- corrects a bug where operations that resulted in adding or changing pin assignments to nets could not be undone correctly.











