Skip to content

Conversation

@AndyDu1985
Copy link
Contributor

Please Note:

  1. Before submitting the PR, please review How to Contribute to Dynamo
  2. Dynamo Team will meet 1x a month to review PRs found on Github (Issues will be handled separately)
  3. PRs will be reviewed from oldest to newest
  4. If a reviewed PR requires changes by the owner, the owner of the PR has 30 days to respond. If the PR has seen no activity by the next session, it will be either closed by the team or depending on its utility will be taken over by someone on the team
  5. PRs should use either Dynamo's default PR template or one of these other template options in order to be considered for review.
  6. PRs that do not have one of the Dynamo PR templates completely filled out with all declarations satisfied will not be reviewed by the Dynamo team.
  7. PRs made to the DynamoRevit repo will need to be cherry-picked into all the DynamoRevit Release branches that Dynamo supports. Contributors will be responsible for cherry-picking their reviewed commits to the other branches after a LGTM label is added to the PR.

Purpose

Make libG version robust. This is a temporary fix, will refactor code later.

Declarations

Check these if you believe they are true

  • The code base is in a better state after this PR
  • Is documented according to the standards
  • The level of testing this PR includes is appropriate
  • User facing strings, if any, are extracted into *.resx files
  • Snapshot of UI changes, if any.

Reviewers

@QilongTang @mjkkirschner @ZiyunShang

Copy link
Contributor

@QilongTang QilongTang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

/// </summary>
/// <param name="preloaderLocation"></param>
/// <returns></returns>
internal static Version PreloadLibGVersion(string preloaderLocation)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mjkkirschner @aparajit-pratap I feel this tech debt is good for now due to the nature of the bug, of course DynamoCore will provide API pretty soon to get the correct libG version based on ASM version and libG preloader available. If there is no objection, let us fix this as part of next DynamoCore release since it is directly related to host integration support.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mjkkirschner @aparajit-pratap @AndyDu1985 @ZiyunShang More details for you, I have confirmed with @angelowang that Civil Team dose not have the same bug here because of their implementation of GetGeometryFactoryPath() is different than D4R. See: https://git.autodesk.com/Civil3D/Civil3D/blob/master/Source/Dynamo/AcDynamo/GeometryFactoryPathDetector.cs#L38

var regExp = new Regex(@"^libg_(\d\d\d)_(\d)_(\d)$", RegexOptions.IgnoreCase);
{
var match = regExp.Match(preloaderLocation);
if (match.Groups.Count == 4)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just curious, what is match group 0?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The whole word, such as "libg_22X_X_X".

@mjkkirschner
Copy link
Member

@AndyDu1985 looks good to me, just had one comment and a question - but feel free to ignore them if you disagree.
LGTM

@@ -1,3 +1,7 @@
## 0.1.0
* The version of master branch will be start with 0.1.x, and Revit2020 branch will still be 0.0.xx.
* LibG should be more version compatible.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you mean by this statement exactly?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The version for master branch will be like 0.1.x, and RC2.1.0_Revit2020 will be 0.0.x, and in the future, after a new major branch is split, that branch will have version 0.1.x, and the master will be 0.2.x.
I add the statement just to help others to understand how we define version number.

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

Successfully merging this pull request may close these issues.

6 participants