Git Repository

If you have a question or need help, this is the place to be.

Re: Git Repository

Postby blackwind » Sun Jan 19, 2014 2:29 am

Got the email notification from GitHub a few hours ago. Excellent work, Carson!

Incrementing a major version number suggests to the user that there are major, possibly backwards incompatible changes, so I move that we start with 0.5.0. This is absolutely a major release, but only for those of us behind the scenes. Let's save 1.0 for the plugins repository and the Python 2.7 upgrade.

I'm still away from home, but I look forward to contributing again (directly, this time) in the coming months!
/bw
User avatar
blackwind
Experienced User
 
Posts: 182
Joined: Wed Sep 12, 2012 2:59 am
Location: Canada

Re: Git Repository

Postby cfull1 » Sun Jan 19, 2014 3:23 am

Ah! Glad I'm not the only one thinking about those two things.

I like 0.5.0, it was my first thought. Then I thought we would be increment faster and it would be better to start at 0 for minor releases. Regardless, that works for me!

I actually don't have all the libraries needed to run from source, but at least I'm finally back on a desktop and not a vm. So that will be my first point of action. Next I think will be swapping the svn stuff for git.

Oh I also could compile and upload a release to github, for testers that don't want to run from source if that would be helpful?

Pako, would you mind remaking that change for the plugin support link? Let me know if you need any help migrating to git as well. You'll see I removed the plugin-install folder to match trunk. Consequently, not-included-plugins seemed out of place. I moved them into the plugins folder and added a "noinclude" file so the builder knows to exclude it. My thought, would be once we get the plugin repository setup (whatever that ends up looking like) is these plugins would be removed from the main EG repository.
cfull1
Experienced User
 
Posts: 124
Joined: Thu Aug 19, 2010 4:52 am

Re: Git Repository

Postby Pako » Sun Jan 19, 2014 9:24 am

Got the email notification from GitHub a few hours ago. It was 23:49 pm local time and a little aroused me. :D
blackwind wrote:Incrementing a major version number suggests to the user that there are major, possibly backwards incompatible changes, so I move that we start with 0.5.0. This is absolutely a major release, but only for those of us behind the scenes. Let's save 1.0 for the plugins repository and the Python 2.7 upgrade.
I agree with blackwind.
cfull1 wrote:Pako, would you mind remaking that change for the plugin support link?
I'm sorry but I did not understand the question.
cfull1 wrote:Let me know if you need any help migrating to git as well.
Yes, I need a little help.
Now I do not know what exactly to do. How to start.
For me, it makes it difficult especially language barriers.
I will try to find some guidance on GitHub in the Czech language.
Perhaps something like this exists and I'll be able to understand easily.

However, I look forward to a better season begins for EventGhost!
I hope it will not be here to pay our favorite saying "every change is for the worse".

Pako
User avatar
Pako
Plugin Developer
 
Posts: 2224
Joined: Sat Nov 11, 2006 1:31 pm
Location: Czech Republic

Re: Git Repository

Postby Pako » Sun Jan 19, 2014 1:54 pm

1) I found a nice book about Git and it exists even in Czech version !!!
2) I made a clone and now I have a local repository
3) I'm trying to create a build, but it does not work:
3.1) In many plugins were many errors, especially indentation. How is this possible? I fixed it in the working directory, but I still can not create a build:
3.2) Another problem occurred in the file \tools\ builder\CheckSources.py:
Code: Select all
ERROR:root:Traceback (most recent call last):
ERROR:root:  File "D:\Programs\P\Python26_stackless\lib\threading.py", line 532, in __bootstrap_inner
ERROR:root:    self.run()
ERROR:root:  File "D:\Programs\P\Python26_stackless\lib\threading.py", line 484, in run
ERROR:root:    self.__target(*self.__args, **self.__kwargs)
ERROR:root:  File "D:\Programs\E\EventGhost.NEW_GIT\tools\builder\Gui.py", line 88, in DoMain
ERROR:root:    builder.Tasks.Main(self.buildSetup)
ERROR:root:  File "D:\Programs\E\EventGhost.NEW_GIT\tools\builder\Tasks.py", line 179, in Main
ERROR:root:    task.DoTask()
ERROR:root:  File "D:\Programs\E\EventGhost.NEW_GIT\tools\builder\CheckSources.py", line 94, in DoTask
ERROR:root:    status = client.status(svnRoot, ignore = True)
ERROR:root:TypeError: PyCXX: Error creating object of type class Py::SeqBase<class Py::Char> from None

It is clear that it refers to a change SVN -> GitHub. I do not have courage to fix. I do not have sufficient knowledge about Git.

Pako
User avatar
Pako
Plugin Developer
 
Posts: 2224
Joined: Sat Nov 11, 2006 1:31 pm
Location: Czech Republic

Re: Git Repository

Postby cfull1 » Sun Jan 19, 2014 6:08 pm

I have found a couple of these issues as well. SVN diffs files, where git Git diffs changesets. I did not stop between every commit to test everything, and I confess some of the changesets where confusing for me since my knowledge of the core is still limited.

I don't believe it is necessary for core developers (especially Pako) to create their own fork of the repository. The members of the EventGhost organization on GitHub automatically have write access to the EventGhost repository. Note the distinction between organization and repository. Side note: It will be easy to create another repository under the organization, say for a plugin that many contribute to.
Pako, I would clone the repo instead of forking it. Depending on how much you've read about Git you'll know you can create a branch and keep it local OR push it up to the remote/origin/GitHub so others can contribute to. So say I want to update the serial port library, I would create a branch off of develop and commit as many changes as I want and then when I'm done I can merge it back into develop. I never pushed the branch up to the remote though, so no one sees the changes until that merge commit on develop. This is perfect for playing around with an idea, because no one sees it and can be deleted easily.
On a previous post, I mentioned this article, which I suggest we loosely follow.

A couple of Git practices I follow:
1) No fast fowards (--no-ff). That article talks about this about half way down, so I won't go into detail. But basically it forces a merge commit to be made, which keeps the branch separated in history. I can go into why this is good if need be.
2) When doing a pull use the rebase option.
For example, say Pako and I have made commits to develop, and he pushes his up to the remote. Then I go to push my changes, but I can't (git error something along the lines of "branch head behind remote"). I need to pull down the changes on remote. Pull is a shortcut for fetch and merge. Fetch updates your copy of the repo with everything on the remote (remember git is distributed), but the remote branch is still separate from your local branch.
When I pull a merge commit will be made merging remote develop into local develop. This is confusing. What we really want is to rebase, which takes my changes a puts them on top of the remote branch. So now Pako's changes were inserted and then mine are placed on top of his. This keeps everything on one line, which makes sense since these changes were on the same branch. That may be a horrible explanation, but there's tons of info on this stuff.
Summary: rebase your changes before pushing.

Now as that article states, bugfixes are committed directly to develop. Pako I would encourage you to do this with the errors you've found. I have found one so far and I'll commit that to develop.
I will create a feature branch for svn to git changes and push that up so you and others can take a look and contribute.

Also tools:
I've use SourceTree on Mac, and it works great. They have a windows version too, I'm trying out. I think it only falls short when there are merge conflicts.
The other is TortoiseGit. I started Git with this and it integrates with windows explorer nicely. Also handles merge conflicts better.
I have yet to try out GitHub's app, but it is a serious contender too.

Update:
Well I've pushed some changes up. I've had a hell of a time trying to get it to run from source though. I finally was able to get gcc-xml install and all the other dependencies setup. Builder still gets stuck...and app freezes. Apparently wxPython 3.0.0 is a bit different than the one we require released 5 years ago...who would've thought. I think the "wx.build.config" module needs to be exluded.
Going to look into both tomorrow.

Update #2:
Ok so it turns on wxPython 3.0 is what's causing the freeze. I think this bug should be made a priority after git is setup, but I know very little about the wx library.
Pako, can you tell me the versions of each dependency you're using to make the builds?
cfull1
Experienced User
 
Posts: 124
Joined: Thu Aug 19, 2010 4:52 am

Re: Git Repository

Postby blackwind » Tue Mar 18, 2014 11:21 pm

cfull1 wrote:Pako, can you tell me the versions of each dependency you're using to make the builds?

*bump*
/bw
User avatar
blackwind
Experienced User
 
Posts: 182
Joined: Wed Sep 12, 2012 2:59 am
Location: Canada

Re: Git Repository

Postby Pako » Wed Mar 19, 2014 9:21 am

cfull1 wrote:Pako, can you tell me the versions of each dependency you're using to make the builds?
I'm sorry, but this requirement I had not noticed. :oops:
I do not know exactly what you mean.
Here is a Build.log.
I hope that in it you will find the answer to your question.
If there's something missing, please list the specific items.

Pako
User avatar
Pako
Plugin Developer
 
Posts: 2224
Joined: Sat Nov 11, 2006 1:31 pm
Location: Czech Republic

Re: Git Repository

Postby cfull1 » Wed Mar 19, 2014 1:44 pm

Thanks Pako, this helps.

FYI, The motherboard on my computer failed, and I'm getting a replacement. So that's part of the hold up right now.
cfull1
Experienced User
 
Posts: 124
Joined: Thu Aug 19, 2010 4:52 am

Re: Git Repository

Postby blackwind » Thu Apr 17, 2014 11:05 am

Might svn2git produce a more workable result?
/bw
User avatar
blackwind
Experienced User
 
Posts: 182
Joined: Wed Sep 12, 2012 2:59 am
Location: Canada

Re: Git Repository

Postby cfull1 » Wed Jul 30, 2014 11:14 pm

Wow where does the time go? I know I've been MIA for a while, so here's an update.

  • I've found some bugs in the code causing errors, they were due too bad merges on my part. Everything seems to be working good now.
  • I'm working on the builder piece, removing svn and adding git
  • I'm thinking through releases and can't wait to get them integrated with GitHub, that's going to be really nice.

One of the things I don't like is how hard it is to run from source. It's such a pain to get your environment setup to run EG. I'm sure this is a barrier to entry for most. I've been thinking through how to make it easier. virtualenv is part of the solution, and the other part is pip. Pip has come a long way and I'm excited about its future. There are a handful of libraries that EG relies on that are outdated. I'm looking for replacements for these libraries to make it even easier to setup and be future proof (possibly easier to move to python 3 :shock:). PIL is an example, which is replaced be Pillow.

I know the biggest feature missing from EG is plugin management. I've been thinking through that as how and how it should be implemented.

On another note, have you guys heard of PyCharm? It's awesome! I was turned on to it because I use PhpStorm at work and it's made by the same people. I couldn't work without its debugger. You guys should check it out!

Anyways, I obviously have a lot on my mind! Hopefully you should see some updates on github soon, branches if anything. Let me know your thoughts, comments, or questions!
cfull1
Experienced User
 
Posts: 124
Joined: Thu Aug 19, 2010 4:52 am

Re: Git Repository

Postby blackwind » Wed Feb 17, 2016 3:32 am

Just a heads-up, Pako: We're finally making progress over at GitHub and should be ready to migrate soon.
/bw
User avatar
blackwind
Experienced User
 
Posts: 182
Joined: Wed Sep 12, 2012 2:59 am
Location: Canada

Re: Git Repository

Postby Pako » Wed Feb 17, 2016 5:25 am

I know about it. I've got about 20 e-mails from GitHub during (my) night. :D

Pako
You know flattr ? You can Image
User avatar
Pako
Plugin Developer
 
Posts: 2224
Joined: Sat Nov 11, 2006 1:31 pm
Location: Czech Republic

Re: Git Repository

Postby blackwind » Wed Feb 17, 2016 7:59 am

Haha, right, forgot about that. :D
/bw
User avatar
blackwind
Experienced User
 
Posts: 182
Joined: Wed Sep 12, 2012 2:59 am
Location: Canada

Re: Git Repository

Postby Phil » Fri Feb 26, 2016 2:55 pm

Just a couple of questions from a curious watcher of this thread.
Will this theoretically result in a quicker development time for EG as it wont all need Pako (excellent as he is!) to do it all?
Will there be a way for plugins to be moved to git to allow updates to them all to be pulled rather than routing through the forums to see if anything is updated?

really pleased that some competent people are still working on this.
Phil
Experienced User
 
Posts: 105
Joined: Tue Apr 15, 2014 10:42 am
Location: Merseyside, UK

Re: Git Repository

Postby blackwind » Fri Feb 26, 2016 8:14 pm

Phil wrote:Will this theoretically result in a quicker development time for EG as it wont all need Pako (excellent as he is!) to do it all?

Yes.

Will there be a way for plugins to be moved to git to allow updates to them all to be pulled rather than routing through the forums to see if anything is updated?

Long-term, yes.
/bw
User avatar
blackwind
Experienced User
 
Posts: 182
Joined: Wed Sep 12, 2012 2:59 am
Location: Canada

PreviousNext

Return to General Support

Who is online

Users browsing this forum: Bing [Bot] and 6 guests