Skip to content

Releases: pyrevitlabs/pyRevit

pyRevit v4.8.16.24121

30 Apr 21:39
Compare
Choose a tag to compare

Highlights


  • 🟢 We moved the pyRevit repo from @eirannejad user account to the pyrevitlabs org to facilitate the work of maintainers and to release some (if not all ;) ) of the pressure from @eirannejad shoulders. It has been ten years, you know... 🟢

  • Resolved #2188: rpw resources engine update - 🍾 This is major and thanks @jbf1212 for this fix. Now you wont get the LoadComponent 3 args error using the rpw module

Tools

  • Improved #2209: Lines per view counter improvements by @jmcouffin, a new take on @frederic-beaupere tool, with a new shift click option to query lines in linked files views
  • Implemented #2178: Feature/show view range by @thumDer, pretty nifty tool 👏 Next time you will train on Revit, I am sure you will think about Tamas 😄

Downloads

🔹 See Assets section below for all download options

pyRevit

pyRevit CLI (Command line utility)

pyRevit v4.8.15.24089

29 Mar 09:48
Compare
Choose a tag to compare

Downloads

🔹 See Assets section below for all download options

pyRevit

pyRevit CLI (Command line utility)

Highlights

Changes

Python 3

  • Resolved #2139: fix: make pyrevitlib cpython compatible

Engines

  • Resolved #2139: fix: make pyrevitlib cpython compatible
  • Dropped old python engines. Some external extensions tools using the rpw module may throw an error and require some fixing.

Lib2GitSharp

  • Version update bug fix

Stale Issues handling

  • Old issues are now handled automatically. If no extra information is given within weeks of the stale flag, the issue gets close. Even though some issues require fixing, they are sometimes too big or lacking manpower, information, reproducibility.

Issue / Bug template refactor

  • Issue report has been entirely refactored to align with bug fixing context requirements. Please, do fill in all the required context data and go through the general FAQ fix steps

What's Changed

Bugs fixes

CI/CD workflows improvements

Improvements

Development improvements

New Contributors

Special thanks

Full Changelog: v4.8.14.24016+1909...v4.8.15.24089+0912

pyRevit v4.8.14.24016

17 Jan 17:01
Compare
Choose a tag to compare

Downloads

🔹 See Assets section below for all download options

pyRevit

pyRevit CLI (Command line utility)

Highlights

⏯ Color Splasher in pyRevit image

  • Implemented #2021 #2022 #2028 #2029: Color Splasher ported to pyRevit from [Original BIMOne Color Splasher (https://github.com/bimone/addins-colorsplasher) with help from Nonica and some time donated from BIMOne Inc.
    image
    ✨Bonus features: Create filters and apply to view, Create legend

  • Implemented #1832: PyRevit Synchronise button, tool that can replace the Revit sync button and offer the possibility to automatically sync on starting view and close other windows. Many people involved around this tool including @jmcouffin @thumDer @alexdaversa @Robbo1234 @aniketdikshit

2024-01-17_17-39-57

  • Updated #2023: Update dependencies
  • Resolved #1865: handling #1864 multiple Revit session launch at the same time thanks to @thumDer
  • New bundle feature: name a second set of icons icon.dark.png in your bundle to have a Dark Theme friendly icon display thanks to @dosymep

image

image

Changes

Tools

  • Improved #2014: improved view handling
  • Improved #2015: Add current date to Print Sheets tool filename formats.
  • Implemented #1832: PyRevit Synchronise
  • Improved #1944: Added cat to entities without tags
  • Improved #1943: Exception for Workset links already existing
  • Improved #1932: Fix for #1913 - Set Crop Region now works with Elevations
  • Improved #1921: Reassign Parent for Keynote
  • Improved #1872: config mode for Get Centroid

pyRevit API Documentation

New documentation workflow and platform:

  • CI when publishing PR against docs branch
  • mkdocs backend
  • Modern theme,
  • Better presentation and code highlighting of examples embedded in modules docstring, copy button for sample code, ...

New documentation website

Thanks to for the initiative and extensive work @sanzoghenzo and @jmcouffin to help the fixing of the docstrings against google python recommendations

  • Resolved #1951: update docs with latest changes
  • Resolved #1950: Updated forms.alert sample
  • Resolved #1919: docs: switch doc generation to mkdocs
  • Improved #1896: docs: add docstrings

Runtime

  • Resolved #1931: Fix invokebutton
  • Improved #1885: Implementation of Theme Changed Event (2024+)
  • Resolved #1862: fix: make envvars cpython compatible
  • Resolved #1865: handling #1864

Engines

  • Resolved #1931: Fix invokebutton

Extension Checks

  • Improved #1916: Create worksets_content_check.py

Bundles

Now handles dark theme. Dark Theme UI event implementation

  • Improved #1897: UITheme
  • Resolved #1871: Option to set icon size for toggle_icon and UIpanel's is_beta

Hosts Database

  • Resolved #1888: Update pyrevit-hosts.json

Extension Hooks

  • Improved #1885: Implementation of Theme Changed Event (2024+)

Python 3

  • Resolved #1862: fix: make envvars cpython compatible

pyRevit v4.8.13.23182

02 Jul 00:37
Compare
Choose a tag to compare

Attention (Please)

  • ⚠️ This round of release notes has been generated automatically so it might have missed some stuff.
  • ⚠️ We closed A LOT of old issues reported on github so we can focus on the remaining and not be one of THOSE open-source projects. Direct all hate mail to pyRevit Forums and tag @eirannejad 🥲
  • 😍 This release is compatible with Revit 2024

Downloads

🔹 See Assets section below for all download options

pyRevit

pyRevit CLI (Command line utility)

Highlights

  • Revit 2024 Support
  • Bundles creator extension:
    Bundle Creator extension
  • Implemented #1759: sort 'List Legends on Sheets' by Sheet Number (after Legend Name)
  • Implemented #1752: Select Elements from Group and Subgroups
  • Implemented #1753, #1774 and #1789 : New Feature override 2D elements in current view
    "2D override"
  • Implemented #1743: New Tools: Set legend component orientation
set.legend.orientation.mp4
  • Implemented #1707: Feature - List all sheets a Legend (or Schedule) is on #1702

Changes

Tools

  • Improved #1848: docs: fix userconfig examples
  • Improved #1841: added possibility for multiple selection
  • Resolved #1838: Update bundle.yaml - Removed update flag
  • Resolved #1837: Fix 2d toggle reload behaviour
  • Upgraded #1793: Fix #1732 import export family config
  • Resolved #1765 and #1704: fix read and write mode, set to binary
  • Resolved #1807: Pr/1805 added sorting to include exclude param from view template
  • Resolved #1806: fix for #1805 + added 3D view templates
  • Improved #1801: forms.show_balloon() first prototype [forms module]
  • Resolved #1800: added translation to Wipe Selected Families
  • Resolved #1788: Tool 'remove empty elevation tags' moved to 'wipe' section
  • Improved #1709: fix: add generic itrerable support to make_link
  • Resolved #1720: forms.ask_for_number_slider ignores min and max values
  • Improved #1694: Enhancement OverrideVG options with Dash
  • Improved #1655: include exclude params from view templates
  • Improved #1669: New tool: Set Views Crop Box Line Weight
  • Resolved #1588: Create Schedule from CSV File

Localization

  • Resolved #1849: Settings translated in french
  • Resolved #1799: Russian localization Settings Window
  • Resolved #1800: added translation to Wipe Selected Families

Bundles

  • Resolved #1777: fix assembly cache
  • Resolved #1747: Fix: other.rfa Content Button Bundle Marker #1745
  • Resolved #1745: Content Button Bundle - Dot Marker
  • Resolved #1742: Fix Tooltip videos
  • Resolved #1664: added python and yaml snippets and extension for single button creation
  • Resolved #1637: Fix tags manager

Engines

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