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

Monolithic PSM file makes it harder to contribute #154

Closed
jhoneill opened this issue May 19, 2022 · 6 comments
Closed

Monolithic PSM file makes it harder to contribute #154

jhoneill opened this issue May 19, 2022 · 6 comments
Assignees
Labels
Issue-Enhancement New feature or request Issue-Triaged issue was read and triaged Resolution-By Design The behavior is by design.
Milestone

Comments

@jhoneill
Copy link

All the functions and classes are in a single file.

Whilst it may be optimal to ship this way (and people will argue about that), to contribute an improvement to one function or one class is harder. Please consider splitting the file for development and merging it at build time.

@theJasonHelmick
Copy link
Collaborator

Hi @jhoneill - Are you referring to the json configurations? You can create a multiple json configurations, each with one definition, and export them individually for module testing, then all at once for a completed module. So,
Export-CrescendoModule -ConfigurationFile ./test1.crescendo.json -ModuleName .\test1
then
Export-CrescendoModule -ConfigurationFile ./test1.crescendo.json, ./test2.crescendo.json, ./test3.crescendo.json -ModuleName .\Test

@theJasonHelmick theJasonHelmick self-assigned this May 23, 2022
@theJasonHelmick theJasonHelmick added the Issue-Triaged issue was read and triaged label May 23, 2022
@jhoneill
Copy link
Author

@theJasonHelmick No, I mean the PSM1 file.

If the classes were separate files and these were merged (and loaded from ScriptsToProcess in the PSD so they were accessible from outside the module). And/or each function had its own file and they were merged (or dot sourced in the PSM1) then it would be easier to say "I've updated function X" than "Here's a version of the PSM1 with my changes".

@theJasonHelmick
Copy link
Collaborator

@jhoneill - Thanks James for the clarification. this is an interesting and valid problem - and I have seen a few folks handle this in their build scripts - but - its worth thinking about. I would be interested in the future to hear from folks that are experiencing this problem with large modules and many cmdlets.

@theJasonHelmick theJasonHelmick added the Issue-Enhancement New feature or request label Jul 11, 2022
@theJasonHelmick theJasonHelmick added this to the Investigating milestone Jul 11, 2022
@theJasonHelmick theJasonHelmick added the Resolution-By Design The behavior is by design. label Aug 23, 2022
@theJasonHelmick
Copy link
Collaborator

@jhoneill - Thank you for the suggestion - after reviewing we are not going to break the psm1 apart at this time in our development.

@jhoneill
Copy link
Author

@theJasonHelmick Understood . Maybe we should talk separately about what I did with crescendo in April / May / June. You can look at the James' branch in my fork. I think I've moved things forward but don't feel able to turn that into a contribution to the project.

@theJasonHelmick
Copy link
Collaborator

@jhoneill - Would be very interested (as always) in your perspective and work. I'll send an email - happy to meet and discuss!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Issue-Enhancement New feature or request Issue-Triaged issue was read and triaged Resolution-By Design The behavior is by design.
Projects
None yet
Development

No branches or pull requests

2 participants