> For the complete documentation index, see [llms.txt](https://primer2.dynamobim.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://primer2.dynamobim.org/1_developer_primer_intro/2_build_dynamo_from_source/2-managing-and-updating-dependancies-in-dynamo.md).

# Managing and Updating Dependencies in Dynamo

### When does this wiki apply

While working on a new feature, or simply updating an existing dependency you should evaluate the following before bringing a new dependency into the Dynamo repo.

### Considerations

1. What is the license of the new or updated dependency - only some open source licenses are approved without speaking with ADSK legal.
   * After resolving license, make sure the dep and version are recorded in the internal wiki.
   * If license is `LGPL`, `GPL` or `Apache`, the license file must be copied into the *"Open Source Licenses"* sub-folder of the Dynamo build.
   * If license is `LGPL`, the full source code for all third-party components, along with text copies of their appropriate open source licenses, must be uploaded to [www.autodesk.com/lgplsource](https://www.autodesk.com/company/legal-notices-trademarks/open-source-distribution)
2. If updating, has the license type changed from the previous version?
3. Is the dependency cross platform?
   * Does it have native components (like `CEFSharp` or `ImageMagick`)? This will make it harder to deploy cross platform
   * Does it have windows only references? If so it should not be as dependency of DynamoCore or other cross platform parts of Dynamo (The model layer).
4. Is the dependency correctly bundled into the bin folder on build with all of its required dependencies?
   * If updating, are some files removed as a consequence of updating? Is this version of Dynamo intended for a point release of host products? If so you'll need to keep the old binaries around until a global launch year to support patch installers. See [here](https://github.com/DynamoDS/Dynamo/tree/master/extern/legacy_remove_me).
5. Does the dependency or its dependency tree conflict with other existing dependencies in Dynamo?
6. Does the dependency or its dependency tree conflict with existing dependencies in products that integrate Dynamo in process (Revit, Civil etc) - **This is important, as these issues can only be discovered at integration time unless work is done upfront.**


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://primer2.dynamobim.org/1_developer_primer_intro/2_build_dynamo_from_source/2-managing-and-updating-dependancies-in-dynamo.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
