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

Define lib/app separation and support #114

Open
5 tasks
apjanke opened this issue Jan 6, 2024 · 0 comments
Open
5 tasks

Define lib/app separation and support #114

apjanke opened this issue Jan 6, 2024 · 0 comments
Assignees
Labels
Milestone

Comments

@apjanke
Copy link
Owner

apjanke commented Jan 6, 2024

Ronn-NG is intended to be used as an application in the form of a Unix command. It doesn't really support use as a Ruby library. Its Ruby classes in lib/ are just for internal use.

This is my view of the current Ronn-NG. I'm not sure what the original author Ron Tomayko's view is. I think it's similar, because I didn't see any doco or posts about using Ronn as a Ruby library, there's no doco about a public interface for the Ruby, and to my eye, the code in lib/ is not arranged or documented for client use.

Issue #105 is asking for a Rake task definition that is exposed as client-visible Ruby code, not just a Unix command. We should probably do that.

Maybe alter our internal code structure to make it clear that at the Ruby level, it's for internal use only, and is undocumented and unstable.

Should have a "User Guide.md" doc that discusses this.

TODO

  • Learn what the Ruby conventions for indicating private-use code vs. consumable library is.
  • Document the public interface for Ronn-NG at both the command and library level.
  • Learn how Rake task definitions work (for provide a Ronn rake task definition for clients to call #105).
  • Look through distros and stuff for other packages that may be using Ronn as a Ruby library.
  • Talk to the Fedora and Debian folks about the split of Ronn-NG in to lib and app packages?
@apjanke apjanke self-assigned this Jan 6, 2024
@apjanke apjanke added this to the 1.0.0 milestone Jan 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Low priority
Development

No branches or pull requests

1 participant