Skip to content

Releases: eirannejad/pyRevit

pyRevit v4.8.12.22247

04 Sep 00:44
Compare
Choose a tag to compare

Downloads

🔹 See Assets section below for all download options

pyRevit

pyRevit CLI (Command line utility)

Highlights

  • Revit 2023 Compatibility
  • Added "Wipe Selected Families"
  • Resolved #1480: Exporting with the Make Pattern tool will work with some patterns but not others

Changes

Python API

  • Resolved #1481: pyRevit double-digit patch version does not show up correctly in UI

💛 Thank you to all the contributors for this release!
@ejs-ejs @perrylackowski @onomou @dvdgnz @jmcouffin @sanzoghenzo @alexdaversa @dagz214 @dosymep @MatthewBoynton

pyRevit v4.8.10.22040

09 Feb 17:51
Compare
Choose a tag to compare

Downloads

🔹 See Assets section below for all download options

pyRevit

pyRevit CLI (Command line utility)

Highlights

  • Improved #1476: Add new revit versions to hosts database
  • Improved #1407: New Extensions

Config Changes

⚠️ Some fixes has been applied to the way config files are processed relate to recurring #1451 issues. Hopefully this resolves file access issues on pyRevit runtime. If not, please feel free to open #1451 or file new issues:

  • Terms:

    • user config: pyRevit_config.ini file under %APPDATA%
    • admin config: pyRevit_config.ini file under % PROGRAMDATA%
  • For pyRevit

    • When there are no user config but admin config exists and is marked as read-only:
      pyRevit runs in admin mode. pyRevit settings will show a warning that settings can not be changed

    • When there are no user config but admin config exits and is writable:
      pyRevit uses the admin config as a template to setup user config. Then pyRevit runs in user mode and can make changes to the user config*

    • When there is user config:
      pyRevit runs in user mode and can make changes to the user config*

  • For pyRevit CLI

    • If it is running in elevated mode (system user):
      Writes to %PROGRAMDATA%, otherwise to %APPDATA%

    • When there are no user config but admin config exists and is marked as read-only:
      pyRevit CLI runs in admin mode. Any config changes will be discarded since the admin config is readonly

    • When there are no user config but admin config exits and is writable:
      pyRevit CLI uses the admin config as a template to setup user config. Then pyRevit CLI runs in user mode and can make changes to the user config*

    • When there is user config:
      pyRevit CLI runs in user mode and can make changes to the user config*

Changes

Runtime

  • Resolved #1451: Load Error: Config file access
  • Improved #1476: Add new revit versions to hosts database

Tools

  • Resolved #1475: pyRevit settings telemetry status box does not adjust to content
  • Improved #1442: Print Sheets Selections Printing Blue
  • Resolved #1440: Extra text files generated by Keynote Manager
  • Resolved #1437: Keynote Manager button title is missing the word "Keynotes"

Telemetry

  • Resolved #1475: pyRevit settings telemetry status box does not adjust to content

Python API

  • Improved #1472: forms.register_dockable_panel throws an exception if dockable panel already exists

Bundles

  • Resolved #1462: break link with rhinoinside v1.4

Extensions

  • Improved #1407: New Extensions

pyRevit v4.8.9.21361+0320

27 Dec 03:29
Compare
Choose a tag to compare

Downloads

🔹 See Assets section below for all download options

pyRevit

pyRevit CLI (Command line utility)

Highlights

  • pyRevit is now automatically built. This makes my job as maintainer easier and I can merge contributions faster and release pyRevit more often. The automatic build also generates these Release notes automatically. I only end up editing this section to provide more information and context on the important changes. Read More Here
  • Added new extensions to the Extension Manager (#1407)
  • Many improvements to the tools especially related to Revit 2022 API changes

Changes

Extensions

  • Improved #1407: New Extensions

Tools

  • Resolved #1395: Fix error in Select All Clouds with Same Comment
  • Improved #1370: Translation in French of UI / Tools
  • Upgraded #1363: Workaround Revit 2022 Removal of UnitType from Parameter Definition
  • Improved #1352: Some more french translations in the Views dropdown
  • Resolved #1336: Update schedules_not_on_sheet_check.py
  • Improved #1331: Reload Keynotes before Print Sheets
  • Resolved #1332: 1299 csv headers
  • Resolved #1334: Preflight : model group & model group types count
  • Resolved #1333: Preflight Checks: Revision schedule filtering
  • Resolved #1330: removed typo as per #1329 (comment)
  • Resolved #1302: Update modelchecker_Warnings_check.py
  • Improved #1277: Modelchecker improvements - added Reference planes lister
  • Upgraded #1259: Pattern legend maker adjustments
  • Resolved #1276: Titleblock on sheets
  • Improved #1257: Modelchecker extra function
  • Resolved #1250: French translations

Python API

  • Implemented #1385: handle ! prefix for exclusion
  • Resolved #1346: Update query.py
  • Resolved #1327: Form save_file typo
  • Resolved #1330: removed typo as per #1329 (comment)
  • Resolved #1247: Forms getvaluewindow slider

Bundles

Extension Checks

  • Resolved #1336: Update schedules_not_on_sheet_check.py
  • Resolved #1334: Preflight : model group & model group types count
  • Resolved #1333: Preflight Checks: Revision schedule filtering
  • Resolved #1302: Update modelchecker_Warnings_check.py
  • Improved #1277: Modelchecker improvements - added Reference planes lister
  • Improved #1257: Modelchecker extra function

Telemetry

  • Resolved #1225: Telemetry not writing host_user randomly
  • Resolved #1256: Hotfix/telemetry username

pyRevit v4.8.8

17 May 03:12
b074f29
Compare
Choose a tag to compare

Tools

  • Resolved Issue (#1240: Isolate "Is Painted" error)
  • Resolved Issue (#1224: Create Pattern not working in Revit 2022?)

Installer

  • Resolved Issue (#1228: Installing pyRevit 4.8.7 as admin sets environment variables as user instead of system)
  • Resolved Issue (#1237: BasePublic Deployment fails to install - 'extensions/pyRevitRun.run' missing from repository)

Telemetry

  • Attempt at Resolving Issue (#1225 Telemetry not writing host_user randomly)

API

  • Resolved Issue (#1242: Fix config reading for switches in CommandSwitchWindow)
  • Resolved Issue (#1221: allowdialogs fix)

Misc Changes

  • Resolved Issue (#1231: Created new check modelchecker_Warnings_check.py)
  • Resolved Issue (#1218: I translated in french the sum total button as an example)

pyRevit CLI v4.8.8

17 May 03:11
b074f29
Compare
Choose a tag to compare

Command Line Utility

  • Resolved Issue (#1220: Allow Dialogs in Journal Playback)

pyRevit v4.8.7

04 Apr 22:53
7eb0a4e
Compare
Choose a tag to compare

What's New

Changes to Runtime

pyRevit engines now manually load their own DLLs into Revit to ensure that pyRevit is running on its own engine assemblies. This resolved import wpf errors when another Revit addon would load IronPython 277 (e.g RevitPythonShell) before pyRevit loaded and it would cause a conflict. All engine versions were tested against Revit 2017-2021 and they all load

Screen Shot 2021-04-04 at 2 42 47 PM

Minor changes have been added to fix wpf and sqlite3 imports under the new load mechanism.

Changes to pyRevit Installer

pyRevit installer now switched to Admin mode when ran "As Administrator" (privileged mode). So the new behavior is:

  • When ran as a normal user, it defaults to %APPDATA%\pyRevit-Master for installation and attaches itself to installed Revits for current user only (%APPDATA%\Autodesk\Revit\Addins)

  • When ran as a Admin in privileged mode, it defaults to %PROGRAMFILES%\pyRevit-Master for installation and attaches itself to installed Revits for all users (%PROGRAMDATA%\Autodesk\Revit\Addins)

Support for Dockable panels

Support for dockable panels were added to the forms module. The mechanism follows the Dockable panel design in Revit API. See this Extension startup script example that registers a dockable panel on Revit startup:

class DockableExample(forms.WPFPanel):
    panel_title = "pyRevit Dockable Panel Title"
    panel_id = "3110e336-f81c-4927-87da-4e0d30d4d64a"
    panel_source = op.join(op.dirname(__file__), "DockableExample.xaml")

    def do_something(self, sender, args):
        forms.alert("Voila!!!")


forms.register_dockable_panel(DockableExample)

and this pyRevit script that requests opening a previously registered panel

from pyrevit import forms
test_panel_uuid = "3110e336-f81c-4927-87da-4e0d30d4d64a"
forms.open_dockable_panel(test_panel_uuid)

Revit_EBOQnuTvKn

Tools

  • Resolved Issue (#1206: ASCII Keynote Conversion Failed)
  • Resolved Issue (#1198: Hard crash Print Sheets tool Revit 2018)
  • Resolved Issue (#1196: Issue with number of tab colors)
  • Resolved Issue (#1202: Update Duplicate Views Dependent)
  • Added reset colors option to Tab Coloring options

API

  • Resolved Issue (#1204: Output Styling (CSS Stylesheet) path is empty by default and doesn't persist through Revit restart)
  • Implemented dockable panel into forms module

Misc Changes

  • Attempt at resolving config access error when multiple instances of Revit are executed together

pyRevit CLI v4.8.7

04 Apr 22:52
7eb0a4e
Compare
Choose a tag to compare
  • cli can now add the current clone previt clones add this <clone_name>
  • pyrevit cli now knows when it is running in privileged mode and uses the admin settings under %PROGRAMDATA%\pyRevit

pyRevit v4.8.6

23 Mar 18:34
9eb5df2
Compare
Choose a tag to compare

Happy Norooz! 🎈

New Tab Colorizer with Style Options

Read more here

Revit_z7XZjIEs6Z

Revit_y57ZkxV9zQ

New Context Conditions

Read more here

Tool context has been modified to include more options e.g. Document contexts doc-project, doc-workshared, doc-family and compound conditions with any, all, except, not_any, etc.

Tools

  • Resolved Issue (#1173: New tool - close tabs)
  • Resolved Issue (#1017: Print Sheets not included in schedule)
  • Resolved Issue (#1082: PrintSheets;Beta5: Error when writing multiple sheets to single file)
  • Resolved Issue (#1168: Re-Categorize Keynote)
  • Resolved Issue (#1194: pyRevit Emoji not fonctionning)
  • Resolved Issue (#1170: Print name issue)
  • Resolved Issue (#1176: Pre Flight Check - Model Check "'Chart' is undefined")
  • Resolved Issue (#1028: Error message on COPY/MOVE SELECTED VIEWPORTS TO SELECTED SHEETS)
  • Resolved Issue (#1095: 'Remove Revision From Sheets' button should be 'UNset Revision')
  • Resolved Issue (#1152: Keynote manager - BIM 360)
  • Resolved Issue (#1156: Added UTF-8 encoding)
  • Resolved Issue (#1162: Preflight checks: Rearranged the family collection part + added generic ...)
  • Resolved Issue (#1183: Fix for issue #1182)
  • Resolved Issue (#1179: Cleaning NPC before reapplying them)
  • Fixed temporary file bug in keynote conversion

Runtime

  • Resolved Issue (#1131: Update button hiding buttons)
  • Resolved Issue (#1143: Keynote Manager setup issue BIM 360)
  • Fixed bug on finding config file

Extension Hooks

  • Resolved Issue (#1165: Document Data File in Hooks now using event Doc)

API

  • Resolved Issue (#1195: add optional doc parameter to query functions)
  • Added color picker (forms.ask_for_color())
  • Added dockable panel example (pyRevitDev extension)

pyRevit CLI v4.8.6

23 Mar 18:34
9eb5df2
Compare
Choose a tag to compare

pyRevit CLI now supports using access tokens with the new --token= option on the command line
Misc bug fixes

pyRevit v4.8.5

02 Feb 23:18
6f3e004
Compare
Choose a tag to compare

New Features, Tools

  • Preflight Checks: pyRevit Extensions can now include a checks/ directory with python scripts engine in *_check.py and implementing a Preflight Check type. These checks will automatically show up in the new Preflight Checks tool

  • Custom IronPython Engine: pyRevit now includes a custom IronPython engine. This engine is NOT the default for this release, so we have a chance to get it tested, but it will be the default soon. All previous engines are still supported. The custom engine provides a solution to all the IronPython conflicts and import wpf errors hopefully. To use this, go to pyRevit settings and switch the IronPython engine under Core Settings to this new custom engine, or use the pyRevit CLI to attach using this engine pyrevit attach master default --installed

  • Added New doc-updater hook: This hook is executed every time a model is updated. See example here this example hook, automatically updates the height of new walls to 5 when they are created

  • Added New Tool (#883: Tool to Clear BIM360 Collaboration Cache): Find under Wipe tools

  • Added ReKey buttons to Keynote Manager (#701: Keynote Manager Needs Keynote-Edit-KEY Button): Both categories and keynotes can be rekeyed now

Breaking Changes

  • There are no .run extensions anymore. Run script can now be included inside any extension under the commands/ directory and ending in *_command.py. pyRevit CLI when batch processing using pyrevit run can find these commands. See example here

Tools

  • Resolved Issue (#1143: Keynote Manager setup issue BIM 360)
  • Added grids and levels to ReNumber tool
  • Fixed many keynote manager bugs
  • Resolved Issue (#1140: Handled rvt links not loaded + not displyaing warnings section when no warning)
  • Resolved Issue (#1077: Save Families fails to overwrite families)
  • Resolved Issue (#1076: Parameter framework modification)
  • Resolved Issue (#1117: Modification to Import/Export Family Configs)
  • Fixed bad schedule export in 2021
  • Updated the import export family config tools

Supported Revits

  • Added Revit 2021.1.2

Framework Updates

  • Resolved Issue (#1133: output: not able to save the js part of the output windows as html + js dependencies)

Telemetry

  • Added hooks to the script telemetry system

Extensions

  • added MEPDesign to extensions
  • added pyStructure extension

API

  • Fixed file info bug with newer Revit models

Other

If you are upgrading from pyRevit 4.7.* see these release notes as well: