Skip to content

Releases: joyfullservice/msaccess-vcs-addin

v4.1.2 Fix path issues

12 Apr 23:02

Choose a tag to compare

This update includes two bug fixes affecting users that utilize environment variables in paths, or custom CommandBar menus.

Bug Fixes

  • Fix issue with expanding environment variables. Thanks, @Docent24! #596
  • Fix regression issue with image paths for CommandBar menus. Thanks, @arpm-awv! #621

Known Issues

  • Automatic export on save is currently experimental, and potentially has issues with older versions of Microsoft Access.
  • Command bar support is still somewhat in a beta phase. Please report any issues!
  • Clearing of orphaned database connection source file folders does not (yet) happen automatically.
    See commit history for details on other changes not listed here.

v4.1.1 Fix UNC path support, improve query output

08 Apr 16:18

Choose a tag to compare

This update includes a few important bug fixes that may affect some users that utilize UNC paths. I also fixed a long-standing issue where query exports (randomly?) have alias columns that come and go depending on the internal compilation status of the query. This causes unwanted noise in exports for databases that are otherwise unchanged.

PLEASE NOTE - Source file changes

After updating to 4.1.1, you may see a one-time change to some query source files as unneeded alias column definitions are removed. This is expected, and you should see less "noise" in these source files going forward.

New Features / Enhancements

  • Set up automated workflow to keep repository wiki up to date. Good idea, @hecon5! 3a669a4
  • Update several wiki pages. Thanks, @hecon5! #608
  • Add error handling to hidden attribute processing. #606
  • Sanitize out unneeded field name aliases from Query source files. 6bc259e
  • Check VBE project protection before export. (Can't export from a protected project before unlocking.) #613

Bug Fixes

  • Update toolbar caption to display correctly in Shift-JIS. Thanks, @josef-poetzl! #616
  • Fix build confirmation message. d65962e
  • Fix empty array testing. Thanks, @josef-poetzl! #610
  • Restore UNC path support to VerifyPath function, and better handle long-path support. #612
  • Convert toolbar image names to safe file names. #583
  • Fix processing of command bar with single image. #598

Known Issues

  • Automatic export on save is currently experimental, and potentially has issues with older versions of Microsoft Access.
  • Command bar support is still somewhat in a beta phase. Please report any issues!
  • Clearing of orphaned database connection source file folders does not (yet) happen automatically.
    See commit history for details on other changes not listed here.

v4.1.0 Open repository button, bug fixes, enhancements

22 Feb 22:19

Choose a tag to compare

This update adds several important features including a new button the toolbar to easily switch to the source code repository. (i.e. GitHub Desktop, Sourcetree, etc...) Special thanks to @bclothier for his extensive work on command bar support, and @hecon5 for contributing a number of bug fixes. @josef-poetzl shared a tip that solved a long-standing issue with complex workarounds. Thanks, everyone that had a part in this release!

IMPORTANT - Source file changes

  • Autogenerated SQL definitions for linked tables are no longer included in source files. Structure changes to linked tables should be tracked through the Database connections, or through exports of the back end database.

New Features / Enhancements

  • Add option to install add-in as compiled project (accde). Thanks, @josef-poetzl! #594
  • Ribbon toolbar now works for ADP projects! Thanks, @josef-poetzl! #593
  • Build out command bar (menu) export and import functions. Thanks, @bclothier!
  • Add ribbon button to open source repository! Great idea, Albert Kallal! Supports GitHub Desktop, VSCode, Sourcetree, and TortoiseGit (others can be added.)
  • Update testing database with new tests and adjustments to accommodate new Access bug.
  • Add support for additional compare tools. #580
  • Finish implementing command bar support. Thanks, @bclothier! bd14d8b, 205c27e
  • Rework ribbon strings to support translation/localization. d80523d, df25d89, 07d4396
  • Improve handling of zero length string in TDF data. #543
  • Help generate compatible ADO connection strings for database connections. Thanks, @hecon5 and @bclothier! #546, #547
  • Don't generate SQL structures for linked tables. See #540 for discussion on this.
  • Performance enhancements. #527, f5f08be, 48c4612
  • Build out more scaffolding/framework for future localization/translation of the addin. 52c3e3f, 32491da, 33ef754, 9ee1a8f, etc...
  • Expand environment variables in export path. Good idea, @ngmhun! #490

Bug Fixes

  • Handle form and import issues more gracefully #586
  • Close database objects after running BeforeExport hook. #582
  • Simplify sanitize options to avoid confusion. 7b1b06b
  • Import modules before queries. Great suggestion, Albert Kallal! 6f075ed
  • Improve handling of tables in ADP projects. Thanks, @bclothier! cc4f3a0
  • Add error handling around ribbon COM add-in. 28001f9, d2e5f6d
  • Fix XML encoding for legacy database formats. #560
  • Improve error handling. Thanks, @hecon5! 15c8f7b
  • Remove orphaned TableDef *.sql files. #536
  • Fix incompatible Access SQL data type. Thanks, @the-Arioch! #533
  • Add missing Getter for DigitsAfterDecimal in performance class. Thanks, @Tanarri! #509
  • Prevent race condition with multiple operations running at the same time. #508
  • Add error handling to warn users of broken references. #495
  • Ensure linked table is accessible before exporting. #500

Known Issues

  • Automatic export on save is currently experimental, and potentially has issues with older versions of Microsoft Access.
  • Command bar support is still somewhat in a beta phase. Please report any issues!
  • Clearing of orphaned database connection source file folders does not (yet) happen automatically.
    See commit history for details on other changes not listed here.

v4.0.34 Major Update

06 Feb 19:41

Choose a tag to compare

After a couple years in the making, we are rolling out version 4 as a general release! This is a major update incorporating hundreds of enhancements, bug fixes, and performance improvements as the dev branch was merged into main. Below are some of the major highlights in moving from version 3.x to version 4.x:

  • Ribbon Toolbar interface - So much more intuitive and easier to use for beginners and daily users alike.
  • XML Formatting - Table definitions are exported in XML format, and XSLT transformation provides an improved and consistent output.
  • Split VBA code from designer layouts - VBA code from forms and reports can now be managed separately from the designer layouts, providing easier collaboration between developers and less "noise" when reviewing code changes.
  • Merge Support - Merge modified source files into an existing database without having to rebuild the entire database from scratch.
  • SQL Formatting - Automatically add formatting and indenting to Access SQL queries to improve readability and consistency.
  • Improved Indexing - Reworked the change detection process to use an internal index file to track changes to source files and database components. Change dates are stored as UTC, allowing better collaboration for remote developers.
  • Performance Improvements - Source export and change detection is faster than ever, and detailed performance reports are logged with each operation.
  • External Databases - Export SQL object definition files for external database components such as SQL Server tables. For those that don't use other VCS tools to manage changes to SQL objects, this provides a really simple way to track those changes within your Access project repository.
  • Conflict Resolution - Warn before overwriting unsaved changes in database objects, or source files that have changed since the last export.

If you encounter a bug or problem, please feel free to open an issue. Thanks again to all those that contributed towards the version 4 release over the past couple of years! My hope is that version 4 will empower many Access developers with even greater efficiency as they tap into the benefits of using version control.

v4.0.30-beta (dev branch)

15 Dec 21:03

Choose a tag to compare

Pre-release

IMPORTANT - Work in Progress

This version of the add-in was built from the dev branch, and contains the latest features currently under development. You are welcome to use this for testing or production use, depending on your needs. If you decide to use the dev version in production, please do your own testing to ensure you are getting the desired output for exported source and builds.

If you are building the dev branch from source, you will need version 4.* or newer to successfully build the add-in. (You can build v3 with v4, but you can't build v4 with v3.) In other words, you need this beta version to build the dev branch for the first time.

Features / Fixes (Partial List)

  • Improve support for exporting table data from large tables as XML. #474, #389
  • Refactor change detection for object represented by multiple source files. a767252, 2b37bdb, fc59ae1, dc8947e, #473, #471, #472
  • Improve handling of orphaned files/objects during export and merge operations. #471
  • Add documentation for Merge Build functionality. #471, #81
  • Fix break mode option after loading options from file. 7a4a44f
  • Check VCS version before export and build to avoid unexpected results. #465
  • Add support for detecting changes to, and setting instancing for class modules. 3f1c31d, dfaf5d9, 65f3499
  • Add default .git files if in repository root. 2bf3047
  • Log warning for UNC path access errors. Thanks, @ollypsilon! #461
  • Improve identification of system tables. Thanks, @ollypsilon! #462
  • Fix sorting of operation names with leading spaces. Thanks, @Tanarri! #463
  • Support unquoted paths in rare SQL query syntax. Thanks, @bclothier! #447
  • Add support for Access ! boundary character in SQL formatting. #457
  • Change index file to always use UTC dates in standardized ISO format. Thanks, @hecon5! #454
  • Ensure that the ribbon is active when installing or activating add-in. Thanks, @alanv73! #451
  • Refactor Sanitize module to class to aid future development. 8e70ad2
  • Improve character support in performance timing labels. Thanks, @Tanarri! 0beaee5, #450
  • Add functionality to split form layout definition from the VBA source code. (Many commits related to this.)
  • Improve function to log unhandled errors. Thanks, @hecon5!
  • Misc. bug fixes submitted by @bclothier for .git files, XML error handling, SQL formatting and more... Thanks, @bclothier! #448

Known Issues

  • Automatic export on save is currently experimental, and potentially has issues with older versions of Microsoft Access.

See commit history for details on other changes not listed here.

v4.0.25-beta (dev branch)

19 Oct 22:16

Choose a tag to compare

Pre-release

IMPORTANT - Work in Progress

This version of the add-in was built from the dev branch, and contains the latest features currently under development. You are welcome to use this for testing or production use, depending on your needs. If you decide to use the dev version in production, please do your own testing to ensure you are getting the desired output for exported source and builds.

If you are building the dev branch from source, you will need version 4.* or newer to successfully build the add-in. (You can build v3 with v4, but you can't build v4 with v3.) In other words, you need this beta version to build the dev branch for the first time.

Features / Fixes (Partial List)

  • Rename sanitize levels for greater clarity on intended usage. From "Basic, Aggressive, and Advanced" to "Minimal, Standard and Extended". 964016c
  • Fix export of VBE forms, and refactor to use the json file as the primary file. 8ad9074
  • Verify testing database with latest VCS updates. c864659
  • Add support for tokenizing Microsoft Access date literals. Thanks, @mwolfe02!
  • Fix a few issues in the performance class. Thanks, @hecon5! #441
  • Implement wrapping for long names in performance reports. 1cda774
  • Adjust SQL Formatter for some dialect-specific requirements. Thanks, @josef-poetzl! #442
  • Add position check in SQL Formatter to avoid endless loop. cff400b
  • Update API examples to demonstrate a build from source. 62fde81
  • Add option to pass a source file folder path to the Build API. Inspired by @StolpiJanus 6cdac0c

Known Issues

  • Merge build functionality has had limited testing in real-world applications. Feel free to use it, but recognize that there may be some bugs that pop up along the way. (Feel free to create issues to address any problems you find.)
  • Automatic export on save is currently experimental, and potentially has issues with older versions of Microsoft Access.

See commit history for details on other changes not listed here.

v4.0.21-beta (dev branch)

06 Sep 19:01

Choose a tag to compare

Pre-release

IMPORTANT - Work in Progress

This version of the add-in was built from the dev branch, and contains the latest features currently under development. You are welcome to use this for testing or production use, depending on your needs. If you decide to use the dev version in production, please do your own testing to ensure you are getting the desired output for exported source and builds.

If you are building the dev branch from source, you will need version 4.* or newer to successfully build the add-in. (You can build v3 with v4, but you can't build v4 with v3.) In other words, you need this beta version to build the dev branch for the first time.

PLEASE NOTE: When exporting your project for the first time after this update, you will see a large number of changed files. This is expected with a number of enhancements to the sanitizing functions and SQL formatting for Microsoft Access queries.

Major Changes / Features

  • Add ability to export external database schemas (SQL, MySQL). #415
    If you are using a Microsoft SQL Server or MySQL as a back end to your database, and don't already have a strategy for managing database schema changes, this is a very simple way to get started. It is extremely performant, adding very little lag to the export process, but ensures that you have a current copy of the database schema in version control.

  • Implement high-performance SQL formatter. #426
    This has been on my to-do list for a long time... Microsoft Access queries are now saved in .sql files with indenting and line breaks to improve readability and to provide a better source file for version control. The formatter is (my own) VBA port of the php formatter used in the well-known Doctrine library. I made a few changes to improve performance and readability for VBA, but followed the same general logic from this battle-tested php project.

Features / Fixes (Partial List)

  • Sanitize the ColumnInfo property. #412 Thanks, @bclothier!
  • Remove padding on blank lines in VBA code. #413
  • Fix JSON parsing of linefeed characters. 42cbbde
  • Preserve whitespace in XML values. (Potentially resolved?) #422
  • Sanitize WebImagePadding values. #423 Thanks, @hecon5!
  • Improve stability of merge build process. c7f9d1e
  • Fix issue with export of large theme files. #431 Thanks, @dlangenafa!

Known Issues

  • Merge build functionality has had limited testing in real-world applications. Feel free to use it, but recognize that there may be some bugs that pop up along the way. (Feel free to create issues to address any problems you find.)
  • Automatic export on save is currently experimental, and potentially has issues with older versions of Microsoft Access.

See commit history for details on other changes not listed here.

v4.0.15-beta (dev branch)

10 Jul 19:40

Choose a tag to compare

Pre-release

IMPORTANT - Work in Progress

This version of the add-in was built from the dev branch, and contains the latest features currently under development. You are welcome to use this for testing or production use, depending on your needs. If you decide to use the dev version in production, please do your own testing to ensure you are getting the desired output for exported source and builds.

If you are building the dev branch from source, you will need version 4.* or newer to successfully build the add-in. (You can build v3 with v4, but you can't build v4 with v3.) In other words, you need this beta version to build the dev branch for the first time.

Features / Fixes (Partial List)

  • Fix logic error when building structure of navigation pane groups. #407 Thanks, @akruis!
  • Ignore temporary objects in navigation pane. a19e5ca
  • Handle null values in resources table. #408 f8d1f22 Thanks, @monheimx9!
  • Fix logic error with relations export on full export. 49b51e0
  • Handle document property assignment for invalid object. #409
  • Refactor table filtering/listing in table data export. 10f80ab
  • Fix error handling logic to avoid recursive reporting. #409
  • Add button to Export As... #410 Thanks, @joshbooker!

Known Issues

  • Merge build functionality has had limited testing in real-world applications. Feel free to use it, but recognize that there may be some bugs that pop up along the way. (Feel free to create issues to address any problems you find.)
  • Automatic export on save is currently experimental, and potentially has issues with older versions of Microsoft Access.

See commit history for details on other changes not listed here.

v4.0.13-beta (dev branch)

27 Jun 01:09

Choose a tag to compare

Pre-release

IMPORTANT - Work in Progress

This version of the add-in was built from the dev branch, and contains the latest features currently under development. You are welcome to use this for testing or production use, depending on your needs. If you decide to use the dev version in production, please do your own testing to ensure you are getting the desired output for exported source and builds.

If you are building the dev branch from source, you will need version 4.* or newer to successfully build the add-in. (You can build v3 with v4, but you can't build v4 with v3.) In other words, you need this beta version to build the dev branch for the first time.

Features / Fixes (Partial List)

  • Enhance XML sanitizing and formatting to use XSL transformations. Thanks, @bclothier!
  • Improve the shift-open functionality to use a more reliable API approach. Thanks, @bclothier!
  • Improve the handling of ODBC connections that require authentication during build. Thanks, @bclothier! 180b9ef
  • Sort timing report output by duration. a614fa5
  • Add page to wiki describing the security considerations when using this add-in.
  • Add functionality to install add-in in alternate locations, and improve installer GUI. Thanks, @hecon5 for your efforts on this!
  • Build out merge support and index integration for all remaining database objects.
  • Improve wording on conflict resolution screens. Thanks, @bclothier!
  • Make Options and Conflict Resolution forms resizable, and dynamically adjust column widths. 9354576, b50f318
  • Update Testing database after latest round of changes and enhancements.
  • Change hyperlink labels to buttons. (In case the user has a hyperlink base set for the current database). 44ce3cd
  • Improve the user interface experience on the table data export screen. Thanks, @bclothier! b3f1355
  • Use worker to handle the clean removal of the add-in on uninstall.
  • Fix alternate export of theme file. Thanks, @Tanarri!
  • Update UI to enable merge build functionality.
  • Add merge hooks to options.
  • Update ribbon to latest twinBASIC compiler. ae7aad7
  • Enable ribbon commands even when no database is open. (Use temporary database to load add-in project.) #405, 68b668a

Other Changes

  • Convert project to stand-alone repository instead of fork. #395
  • Rename project from msaccess-vcs-integration to msaccess-vcs-addin . #395

Known Issues

  • Merge build functionality has had limited testing in real-world applications. Feel free to use it, but recognize that there may be some bugs that pop up along the way. (Feel free to create issues to address any problems you find.)
  • Automatic export on save is currently experimental, and potentially has issues with older versions of Microsoft Access.

See commit history for details on other changes not listed here.

v4.0.9-beta (dev branch)

06 Mar 21:58

Choose a tag to compare

Pre-release

IMPORTANT - Work in Progress

This version of the add-in was built from the dev branch, and contains the latest features currently under development. You are welcome to use this for testing or production use, depending on your needs. If you decide to use the dev version in production, please do your own testing to ensure you are getting the desired output for exported source and builds.

If you are building the dev branch from source, you will need version 4.* or newer to successfully build the add-in. (You can build v3 with v4, but you can't build v4 with v3.) In other words, you need this beta version to build the dev branch for the first time.

Features / Fixes

  • Added support for exporting and importing a single object, including new toolbar buttons. #383
  • Improvements to conflict detection, including support for merge conflicts. (Where importing source files may overwrite database objects that contain new changes.)

See commit history for details on other changes not listed here.