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

Provide tutorials/examples for newly added features regarding the bnd / bndtools and PDE cooperation #1294

Open
konczdev opened this issue Jun 8, 2024 · 3 comments

Comments

@konczdev
Copy link

konczdev commented Jun 8, 2024

I am absolutely loving the ongoing efforts for the bnd - pde - tycho interoperability but it is hard to adopt without some introduction tutorial / developer materials.

Example: BND project templates was introduced in 4.31. Even finding the actual wizard page was hard (btw I don't understand why it is behind the 'Generate OSGi metadata automatically', these kind of templating should be a top level wizard). After creating the template project I had absolutely no clue what can I do, what are the possibilities, how the the variables works, etc. Neither Bndtools - Project Templates nor Eclipse PDE Help says nothing about how this feature works. I am an experienced RCP developer, I can reverse engineer the source to understand the feature if I have time. Maybe this topic is related to Community Mentor Consultant

Takeaway: new features are nice but very few know how to use them.

Thank you all for your work.

@laeubi
Copy link
Contributor

laeubi commented Jun 8, 2024

@fipro78 recently added a demo project to Tycho maybe this helps already as a starter, beside that What is bnd? should give you a first introduction into bnd instructions.

Please be aware that PDE features are mainly driven by volunteers and graceful funding (thanks again to Läubisoft, Smart City Jena, Faktor Zehn, Scheidt&Bachmann for initial funding of this feature), so everyone is invited to contribute either code, money, documentation, ... contributions are always welcome!

I don't understand why it is behind the 'Generate OSGi metadata automatically', these kind of templating should be a top level wizard)

Regarding your questions, the reason is simple, because how PDE works today you first need a project and then it determines what templates apply to the type of project (in this case an automatic manifest project), It would really be nice to actually reverse this, e.g first present the user all templates (+ an option to start without it what results in the usual workflow) and then automatically determine project type on template options but that's something not implemented yet and requires some efforts.

@fipro78
Copy link
Contributor

fipro78 commented Jun 8, 2024

I have also updated my RCP Cookbook to use this new feature. But that is of course no replacement for help and improvement inside the IDE.

In case you are interested, the tutorial is here: https://github.com/fipro78/e4-cookbook-basic-recipe/blob/master/tutorials/Eclipse_RCP_Cookbook_Services_Events.md

@konczdev
Copy link
Author

konczdev commented Jun 8, 2024

@laeubi Thank you for the the examples, I actually started to discover the bnd world a few weeks ago and planning to start some kind of blogging like @fipro78 do.

Regarding contribution: yes I know, this is why I say thanks the most time. I also wanted to become a contributor quite a few years ago, then life happened: suffering from multiple autoimmune diseases, almost disabled, it is often difficult to find the energy for everyday life. But I will try to do what I can, I actually started to plan some eclipse related materials.

@fipro78 you commented while I was writing this: thank you for your tutorials, I think I am one of your top reader of your blog posts and repositories :)

@laeubi Templating: I actually thought it might be a generic feature. Users could create templates with any content they want, and if it has some kind of project nature, then the smart importer would be able to handle it properly after creation. But maybe I am wrong as I don't know the implementation details.

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

3 participants