Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

3.0 beta change log OS BHoM #33

Closed
FraserGreenroyd opened this issue Dec 19, 2019 · 0 comments
Closed

3.0 beta change log OS BHoM #33

FraserGreenroyd opened this issue Dec 19, 2019 · 0 comments

Comments

@FraserGreenroyd
Copy link
Owner

BHoM

BHoM_Adapter

  • BHoM_Adapter - refactoring - Level 3 changes
    • Adapter Actions:
      • All Adapter actions (Push, Pull, etc) now live in different files (Push.cs, Pull.cs, etc) in a folder named AdapterActions.
      • The Delete Adapter Action now lives in a file (temporarily?) named Remove.cs, while awaiting on the decision on a better naming to distinguish it from the CRUD delete. Discussion here.
    • Removed the UpdateProperty Adapter Action, as discussed here.
    • Added a dispatch pattern in the Pull() that calls the appropriate Read()/ReadResults() method depending on the base parent type of the provided request, using as dynamic.
    • CRUD methods:
      • Changes in the Read/ReadResults methods:
      • Added empty protected virtual Read(IRequest) Wrapper virtual method
      • Added empty protected virtual ReadResult(IRequest) Wrapper virtual method
      • These Read methods will now be required in single Toolkit implementations in order for the Read to work with different types of Requests. The appropriate read method will now be called by the as dynamic pattern in the Pull, as introduced above in the "Adapter Actions" changes.
      • Made all CRUD Wrapper Methods virtual for consistency.
      • Tidy up in the arrangement of the CRUD methods:
      • Moved the "Protected Abstract CRUD Methods" in their respective files in the CRUD folder (Create.cs, Read.cs, etc.). From now on, we will call those Basic CRUD methods.
      • Renamed the UpdateOnly.cs file to Update.cs.
      • Moved the UpdateProperty in the same file as the UpdateOnly, Update.cs.
      • Added comment sections to clearly separate Basic CRUD methods and Wrapper CRUD methods. Wrapper methods are now those that are meant to add some functionality and then call the Basic CRUD method.
      • Added comments to clarify when such or such method should be implemented/overridden
    • Adapter properties:
      • Deleted the superseded ErrorLog Adapter property.
      • Changes to the Adapter Config public property:
      • Renamed SeparateProperties to HandleDependencies. Changed its default value from False to True.
      • Changed the default value of ProcessInMemory from True to False.
      • Removed MergeWithComparer property. It was never used.
    • Adapter other methods:
      • Renamed Replace() method to CRUD()
    • File_Adapter:
      • File_Adapter: changes to comply with the changes above.
      • File_Adapter: removed the Legacy folder and its content (was all commented/unused code).
  • BHoM_Adapter refactoring Lvl3_01 - workaround to have the CRUD working for non-BHoMObjects
    • Added a WrapNonBHoMObjects() method. Wraps nonBHoMObjects into Custom BHoM Objects so they can make use of the Adapter Replace/Crud methods as the BHoMObjects (they get an ID, CustomData, etc).
    • Added AdapterConfig.WrapNonBHoMObjects that defines default Toolkit behaviour for that method. Defaults to false, as it should be used only in few specific Toolkits.
    • Added a push config boolean option that overrides the default AdapterConfig setting if specified, so the user has control over the specific Push case.
  • BHoM_Adapter: Mapping of IDs to dependencyObjects
    • Fixed a bug where AdapterId was not being mapped to all dependencyObjects causing an error when pushing objects with dependencies.
  • File_Adapter: If no fileName extension is specified, defaults to .json
  • Fixing base Adapter correctly calling Read methods on concrete adapters
    • Casting adapter to its concrete type before dispatching requests in Pull
  • Set up CI
  • Updated AssemblyVersion and AssemblyFileVersion to 3.0.0.0

BHoM_Engine

BHoM_UI

Dynamo_Toolkit

ETABS_Toolkit

Excel_Toolkit

Grasshopper_Toolkit

GSA_Toolkit

Lusas_Toolkit

Mongo_Toolkit

RAM_Toolkit

Revit_Toolkit

  • Add CODEOWNERS file
  • Add posibility to place modelInstance Two-levelbased
    • Allowed creation of a two-level based family instance with location defined by a curve.
  • Aligning with changes in BHoMAdapter
  • AssemblyInfo Files Updated
  • AssemblyInfo Updated
    • AssemblyInfo.cs files updated with the latest version for all the projects
  • Batch cleanup and fix for #440
    • all internal methods in BH.UI.Revit.Engine that are possibly useful outside Revit_Toolkit were made public
  • Building Pull Bug
    • Fix fragments
    • remove unused reference
  • Code cleanup
    • Unused public methods were deprecated:
    • - `BH.UI.Revit.Engine.Query.MaterialType`
      
    • - `BH.UI.Revit.Engine.Query.NextLevel`
      
    • - `BH.UI.Revit.Engine.Query.SelectionBuiltInCategories`
      
    • - `BH.Engine.Adapters.Revit.Create.Panel`
      
    • Unused private and internal methods were deleted:
    • - `BH.UI.Revit.Engine.Convert.ToRevitElementType`
      
    • - `BH.UI.Revit.Engine.Convert.ToBHoMObject2DProperties`
      
    • - `BH.UI.Revit.Engine.Modify.ContainsDisciplineProperties`
      
    • - `BH.UI.Revit.Engine.Modify.GetMaterialProperties`
      
    • - `BH.UI.Revit.Engine.Query.VerticalBounds`
      
    • Irrelevant, commented out code has been deleted
    • BH.UI.Revit.Engine.Modify.AppendBuiltInCategories method name has been changed to Append
    • return type of method BH.UI.Revit.Engine.Convert.ToBHoMLevel has been changed from BHoMObject to BH.oM.Geometry.SettingOut.Level
    • return type of method BH.UI.Revit.Engine.Convert.ToBHoMGrid has been changed from BHoMObject to BH.oM.Geometry.SettingOut.Grid
    • Unused methods were removed
      • BH.UI.Revit.Engine.Query.SpatialElementIds
      • BH.UI.Revit.Engine.Query.RevitType
      • BH.UI.Revit.Engine.Query.BuiltInCategory - first two methods
      • BH.UI.Revit.Engine.Convert.ToRevitElementType
  • Code cleanup and bugfixing
    • Revit <> BHoM converts of geometry have been cleaned up and bugfixed
    • obsolete converts of BEnv elements have been deleted
    • issues with pulling ModelInstances and DraftingInstances were resolved
  • ConvertUnits Removed
    • The decision on unit conversion has been removed from Revit_Toolkit the units are converted automatically now.
  • Enable pushing surface-based ModelInstances
    • BH.Engine.Adapters.Revit.Create.ModelInstance() methods were added for locations of type ISurface and ISolid
    • A method converting ModelInstance with location of type ISurface or ISolid to a Brepbased DirectShape has been added together with necessary helper methods
  • Fix Physical roof creation
  • Fix Pull Space
    • fix fragments to pull space
  • Implement push of Environment.Space to Revit
    • 'ToRevitSpace' method implemented
    • 'ToRevit' method for Enviromental Space added
  • Incorrect Linearity Check Fixed
  • Null check for familyLibrary in CategoryNames query method
    • Informative error given when requested family type does not exist in the Revit document.
  • Prevent from attempt to push analytical panels
    • attempt to push analytical panels has been disabled
  • Pull ISurface Implementation
    • 'BuiltInCategories' method updated to include BH.oM.Physical.Elements.ISurface
    • 'RevitTypes' method updated to include BH.oM.Physical.Elements.ISurface
  • Pushing nurbs-based FramingElements reenabled
  • Query.Discipline Cleaned Up
    • BH.UI.Revit.Engine.Query.Discipline methods have been deprecated and moved to BH.Engine.Adapters.Revit.Query
    • return type of Query.Discipline methods originally sitting in BH.Engine.Adapters.Revit.Query has been changed from a nullable to nonnullable enum (Discipline.Undefined is returned instead of null now)
  • Remove NuGet references to Revit dlls
    • *.csproj files changed to include new way of referencing Revit dll
    • packages.config removed
    • Revit_Toolkit.sln updated to include Debug2020 and Release2020 Solution Configurations
  • Revit_Toolkit: Get/Set Parameter cleaned up
  • Tidy code base
    • Remove a and p prefixes from variable names
    • Remove unnecessary energy analysis look up method
    • Change capitalised method input variables to be standard (lowercase first letter)
  • Unified Unit Conversion
    • BH.UI.Revit.Engine.Query.BHoMUnitType(UnitType) has been added
    • BHoM <> Revit unit conversion has been unified
  • Updating default configurations for debug and release

Rhinoceros_Toolkit

Robot_Toolkit

Socket_Toolkit

TAS_Toolkit

TriangleNet_Toolkit

XML_Toolkit

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant