Recent

Author Topic: Step by step to publish component on OPM  (Read 3915 times)

Mobius1

  • Newbie
  • Posts: 6
Step by step to publish component on OPM
« on: April 04, 2022, 02:03:50 am »
Hello,
I tried searching on google and on this forum on what are the steps to publish something on the Online Package Manager of Lazarus, but I couldn't find it.

Can someone please point me to a link or a document or something that lists the step-by-step process to do that? Thanks in advance

five

  • New Member
  • *
  • Posts: 13
Re: Step by step to publish component on OPM
« Reply #1 on: January 02, 2023, 08:49:48 pm »
@Mobius1, did you had any success on publishing a package to the remote repository, I'll be interested for the documentation if you have any. I'm getting an error ... Cannot send file when trying to push my package.

Remy Lebeau

  • Hero Member
  • *****
  • Posts: 1312
    • Lebeau Software
« Last Edit: January 03, 2023, 10:05:54 pm by Remy Lebeau »
Remy Lebeau
Lebeau Software - Owner, Developer
Internet Direct (Indy) - Admin, Developer (Support forum)

Thaddy

  • Hero Member
  • *****
  • Posts: 14201
  • Probably until I exterminate Putin.
Re: Step by step to publish component on OPM
« Reply #3 on: January 02, 2023, 09:07:56 pm »
OPM is not a wiki. First publish your code and if it has quality It may or may not be included. That is up to the OPM manager and done by hand.
If we can see a GIT or SVN repository and multiple members ( so not you) agree your code might end up in OPM.

Not all packages can be evaluated by the OPM maintainer and he is very careful for that reason.
Good luck. Show us the code.... If it is good enough you will get recommendations.. Actually quite simple...

All this is very freely written/formulated but comes close to how it is actually done.

« Last Edit: January 02, 2023, 09:56:53 pm by Thaddy »
Specialize a type, not a var.

af0815

  • Hero Member
  • *****
  • Posts: 1289
Re: Step by step to publish component on OPM
« Reply #4 on: January 03, 2023, 08:46:06 am »
add to Thaddys note:

And you must be willing to maintain your code, not published once and then forgotten. Maintaining means, you have to react on complaiments and make your code stable for a longer time. This is a lot of work.

So it can be go by some time before your code will be accepted by OPM.

And ... pushing my package to OPM ...  this is not a good pratice. You must say, i have my work working for month, give this and this addons to you. I this code for OPM or not. And if similar code is in OPM, the answer must be no.
regards
Andreas

five

  • New Member
  • *
  • Posts: 13
Re: Step by step to publish component on OPM
« Reply #5 on: January 04, 2023, 03:12:32 pm »
@thaddy

Thanks for the information, I understand very well that OPM is not a Wiki and that it makes sense to have a certain level of quality (higher level is better in fact) in order to avoid having anything.. unfinish product in this repository. You say "Show us the code.." Where should I publish my code? Is there a clear procedure with a committee that is able to give us an answer on the elements that are missing or that must be respected, so that the package that we want to publish is accepted.

-My code is available on GitLab
-I already have the documentation which is available on https://wiki.freepascal.org
-And yes I am available and aware of investing time in maintaining and developing the code

I want to give back to the community :D.

dsiders

  • Hero Member
  • *****
  • Posts: 1052
Re: Step by step to publish component on OPM
« Reply #6 on: January 04, 2023, 05:30:02 pm »
@thaddy

Thanks for the information, I understand very well that OPM is not a Wiki and that it makes sense to have a certain level of quality (higher level is better in fact) in order to avoid having anything.. unfinish product in this repository. You say "Show us the code.." Where should I publish my code? Is there a clear procedure with a committee that is able to give us an answer on the elements that are missing or that must be respected, so that the package that we want to publish is accepted.

-My code is available on GitLab
-I already have the documentation which is available on https://wiki.freepascal.org
-And yes I am available and aware of investing time in maintaining and developing the code

I want to give back to the community :D.

You can start by providing URLs to the GitHub repository and issue tracker, documentation, wiki page, JSON updates files for OPM, et. al.

The community will decide if it's useful. GetMem will decide if it gets included in OPM.

Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

five

  • New Member
  • *
  • Posts: 13
Re: Step by step to publish component on OPM
« Reply #7 on: January 04, 2023, 05:51:09 pm »
@dsiders

I'm confuse here... the official repository is on GitHub or GitLab? If I'm following the documentation on the https://www.lazarus-ide.org/ it is GitLab.

dsiders

  • Hero Member
  • *****
  • Posts: 1052
Re: Step by step to publish component on OPM
« Reply #8 on: January 04, 2023, 06:08:41 pm »
@dsiders

I'm confuse here... the official repository is on GitHub or GitLab? If I'm following the documentation on the https://www.lazarus-ide.org/ it is GitLab.

Where is YOUR code?
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

five

  • New Member
  • *
  • Posts: 13
Re: Step by step to publish component on OPM
« Reply #9 on: January 04, 2023, 06:10:37 pm »

dbannon

  • Hero Member
  • *****
  • Posts: 2786
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Step by step to publish component on OPM
« Reply #10 on: January 04, 2023, 11:14:13 pm »
Five, from what I have seen (as an outsider), its more usual for users to request a package be added to OPM. If users find it useful they want an easier way to install it and ask if it can be added to OPM.

I might be wrong but I don't think I have seen a request by an (new) author in the few years I have been watching ....

You will probably need to wait a bit and see if other people find it useful.  Once you build up a user base, people will start talking about it and things will happen.

Its only been public for a week, and looking at the top righthand side of your gitlab page, seems no one has found it yet. It takes time ....

Davo
Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

wp

  • Hero Member
  • *****
  • Posts: 11855
Re: Step by step to publish component on OPM
« Reply #11 on: January 04, 2023, 11:17:10 pm »
Very impressive! I would strongly vote for adding it to OPM (provided you are willing to maintain it) after a few fixes.

Could you add a sample project so that a potential user can see the component in action without having to work through your wiki article?

Trying to do so I picked an arbitrary project with a DBGrid on my HD and added your DBGridController to it. Before addressing the new features I noticed that it crashes when the application is closed (see attachment).

A few ideas for improvements:
  • The images drawn in the grid header are not high-dpi aware. You must provide them in three sizes and draw them correctly at the size requested by the system. Study TCustomGrid.DrawColumnTitleImage for an example how to do this.
  • Your component uses several events of the TDBGrid in own handlers, and this means that these events are no longer available to the user. You could subclass TDBGrid and call the protected event generator methods instead. Or you could declare TdxDBGridController as a TDBGrid class helper rather than a descendent class of TComponent.

Thaddy

  • Hero Member
  • *****
  • Posts: 14201
  • Probably until I exterminate Putin.
Re: Step by step to publish component on OPM
« Reply #12 on: January 05, 2023, 12:11:28 pm »
I second that, but I did only a little testing. Can you write a test suite for it? Its functionality is definitely worth in including in OPM, but make sure support and maintenance are in order.
Specialize a type, not a var.

five

  • New Member
  • *
  • Posts: 13
Re: Step by step to publish component on OPM
« Reply #13 on: January 05, 2023, 04:25:05 pm »
Thank you all for your comments, I will definitely put the effort in this direction to make this project usable by the community without any issues.

-Provide a complete project as an example
-Draw images correctly at the size requested by the system
-Have a series of unit tests to validate the component

Regards

giacomarko

  • New Member
  • *
  • Posts: 10
Re: Step by step to publish component on OPM
« Reply #14 on: January 19, 2023, 08:50:12 pm »
Hi @Five !,

I've downloaded your component TdxDBGridController, few days ago out of OPM, and I found it fantastic!

I've read instrucion's page -> https://wiki.freepascal.org/TdxDBGridController as well as downloaded your demo project, I've ran your demo and it's working perfectly.

Despite that, surely by my mistake somewhere, I'm not able to execute any kind of sort, BTW the sort arrow appears on title cell (up and down), but nothing happen on grid's data.

My test project is very simple; one form with DBGrid + TdxDBGridController, connection, transaction, datasource and SQL Query...

Everything is working, search by column.. search by whole table, filtering... but not sorting.

Is there something I've to declare or do ... to make sort working ?

Thank in advance

Marco
« Last Edit: January 19, 2023, 11:39:22 pm by giacomarko »

 

TinyPortal © 2005-2018