First step for contributing to development



Good news, I succeeded in setting up a build environment on MacOS (note : I did not succeed building with Qt 5.9, I had to switch back to Qt 5.8). :slight_smile: I saw here a list of suggestions for new contributors. Is it still up to date? Do you have a “dead simple” task I could try, knowing my C++ background is thin and old? BTW: as a UX designer, I would be more comfortable contributing on designing the UI, but I do not know whether it would make sense to you?

Bye, Yann


@ronanletiec wrote good instruction that describes his successful experience.

Should be easy:


As a starter, I’ll pick a wording issue.

I’m a bit puzzled regarding BitBucket/Mercurial usage in the project. At this point, I cloned the Valentina repository, and created a local named branch into it. Do you expect me to commit or push suggested changes on this branch?


Which? For start better use develop branch for all your commits.


Ok, so does the following sequence comply with your expectations?

  1. Clone the develop branch:
  • hg clone valentina-v0.5 -r develop
  1. Make a named working copy, dedicated to
  • hg clone valentina-develop valentina-renamingTools
  1. Launch Qt Creator
  2. Load project from valentina-renamingTools
  3. “Execute > Launch qmake”
  4. “Compile all”
  5. Make and save changes corresponding to a given Bitbucket issue,
  6. When changes are ok:
  7. Push changes from local working copy to local clone:
  • cd valentina-renamingTools
  • hg commit
  • hg push
  • cd ../valentina-v0.5
  • hg merge
  • hg push



Not at all.

To make your life easier just clone the repo, update to develop branch and commit into it. Of course push/merge. Use TortoiseHG and make your life easier. You have two ways how to return code: attach a patch here or send via pull requests.


Currently stuck in TortoiseHg, I cannot push a change I committed on my local clone. Here is what I get in the log:

pushing to
warning: connecting to using legacy security technology (TLS 1.0); see for more info
searching for changes
http authorization required for
realm: HTTP
 warning: connecting to using legacy security technology (TLS 1.0); see for more info
abort: authorization failed
[command returned code 255 Fri Aug 18 19:24:22 2017] 

Any idea?


@yannlossouarn I don’t believe you can push changes to the main repository. You won’t have permission. Instead, you must create a pull request via BitBucket as explained here.


Yes, this is right answer. Giving access to all is a nightmare. There are two options: @slspencer grant you with access or you will fork the repo on Bitbucket, push there and then will use a pull request.

If it is hard for you there is always exist old patch way.:slight_smile:


Maybe this is even good time to switch to Github. As i remember @slspencer like more work with git.


OMG, I’ve been looking for a way to fork a repo on Bitbucket for a long time! I finally abandoned, thinking it was not possible. Following your advice, I searched again, and found it! Thanks, I think it is gonna be ok now! :slight_smile:


The problem with moving from Mercurial to Git is that we might lose issues and wiki and pipelines, etc.

So I’ve asked Bitbucket to give me a quote on cost of converting to using Git, and also to adding consulting services to connect the new Git repo to the issues list, etc.

If that migration goes well, we may further investigate leaving Bitbucket for, like Inkscape.

I’m trying to migrate towards using tools and platforms that are more familiar to the open source community. The main barrier for contributors is Mercurial, not Bitbucket.


Don’t see a problem. Issue tracker database can be exported and then imported for new repository. The Wiki on Bitbucket is just a repository. Move all files to new wiki and you have all the same. As to pipelines, fixing script will do the job.

Mercurial lost the battle, but i still like it very much. Yes, move to git.:slight_smile:


I agree, Mercurial has features that are super great. However if we want to make it easier for programmers to contribute, changing to Git is a priority.

And there have been several posts about how to convert to Git and keep the connection to the additional resosurces on the repository. It appears that Atlassian’s implementation is a bit proprietary, and we have to ask for them to make this conversion. We can convert to Git on our own, but converting everything else is an Atlassian mafia shakedown :smiley:


You are boss here from now one. Do whatever you want. I just don’t care anymore.


@dismine, you still care, you’re just very tired, and you have things you want to fix in Valentina but don’t have time to do so.

Which is why the compromise of switching from Mercurial (which may be better but only has 3% of the users that Git has) to Git is important in getting you the relief you need.


And no I’m not the boss. Being a community leader is very different than being ‘the boss’. :smiley:


@slspencer being the community leader is probably not as easy as being a boss. You probably do not get told as often as you deserve that you do great work and you are appreciated. You do, and you are


awww…I’m just happy that we’re growing so fast!!! So much has been happening in the last 3 months, we’re reaching a tipping point. Growth does cause some change and stress, I think we’ve seen that recently. But it also causes even more good things to happen. All we have to do is hang on for the ride!


Ok… now that I finally jumped through all the hoops of installing TortoiseHG & QT, the repo cloned, and a successful build… Yay! How will switching to GIT change the workflow? I see that there is TortoiseGit - can I assume that TortoiseGit is similar in operation to the HG ver and is it a good choice? Or are there better Git client’s?