Information about the new YAML module
Hi everyone, I've just pushed my work on a new YAML module to the experimental branch (revision 2184). Rather than being backed by the old syck code that 1.8/1.9 use, this is backed by the libYAML library (BSD licensed). As of right now it appears to be about 4x slower than 1.9's YAML module, but there's a lot of room for optimizing my code. This new YAML module aims to be wholly compatible with the old API inside yaml.rb. *Please *test this module out, and let me know if you find any inconsistencies or false results. As of right now it passes the RubySpecs for YAML::dump() and YAML::load(). (Oh, and sorry for spamming the macruby-changes list; git-svn applied something like 40 commits at one time. Oops!) -- Patrick Thomson
Awesome work Patrick! Thanks a lot for your work on this. Eloy On 3 aug 2009, at 19:51, Patrick Thomson wrote:
Hi everyone,
I've just pushed my work on a new YAML module to the experimental branch (revision 2184). Rather than being backed by the old syck code that 1.8/1.9 use, this is backed by the libYAML library (BSD licensed). As of right now it appears to be about 4x slower than 1.9's YAML module, but there's a lot of room for optimizing my code.
This new YAML module aims to be wholly compatible with the old API inside yaml.rb. Please test this module out, and let me know if you find any inconsistencies or false results. As of right now it passes the RubySpecs for YAML::dump() and YAML::load().
(Oh, and sorry for spamming the macruby-changes list; git-svn applied something like 40 commits at one time. Oops!)
-- Patrick Thomson _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
Btw: About git-svn creating many commits, I wouldn't worry about it :) But if you'd like to normalize, I'd do something like: $ git checkout -b yaml_branch # work on it $ git checkout master $ git diff yaml_branch | patch -p1 $ git add . $ git commit -v Eloy On 3 aug 2009, at 19:51, Patrick Thomson wrote:
Hi everyone,
I've just pushed my work on a new YAML module to the experimental branch (revision 2184). Rather than being backed by the old syck code that 1.8/1.9 use, this is backed by the libYAML library (BSD licensed). As of right now it appears to be about 4x slower than 1.9's YAML module, but there's a lot of room for optimizing my code.
This new YAML module aims to be wholly compatible with the old API inside yaml.rb. Please test this module out, and let me know if you find any inconsistencies or false results. As of right now it passes the RubySpecs for YAML::dump() and YAML::load().
(Oh, and sorry for spamming the macruby-changes list; git-svn applied something like 40 commits at one time. Oops!)
-- Patrick Thomson _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
hmm maybe I should give git-svn another chance. (it annoyed me so much I went back to svn) Eloy, would you mind giving a quick rundown of your setup and workflow? Thanks, - Matt On Mon, Aug 3, 2009 at 1:01 PM, Eloy Duran <eloy.de.enige@gmail.com> wrote:
Btw: About git-svn creating many commits, I wouldn't worry about it :) But if you'd like to normalize, I'd do something like: $ git checkout -b yaml_branch
# work on it
$ git checkout master $ git diff yaml_branch | patch -p1
$ git add . $ git commit -v
Eloy
On 3 aug 2009, at 19:51, Patrick Thomson wrote:
Hi everyone,
I've just pushed my work on a new YAML module to the experimental branch (revision 2184). Rather than being backed by the old syck code that 1.8/1.9 use, this is backed by the libYAML library (BSD licensed). As of right now it appears to be about 4x slower than 1.9's YAML module, but there's a lot of room for optimizing my code.
This new YAML module aims to be wholly compatible with the old API inside yaml.rb. *Please *test this module out, and let me know if you find any inconsistencies or false results. As of right now it passes the RubySpecs for YAML::dump() and YAML::load().
(Oh, and sorry for spamming the macruby-changes list; git-svn applied something like 40 commits at one time. Oops!)
-- Patrick Thomson _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
Oh… Why did it annoy you? My normal workflow is: $ git svn rebase $ git checkout -b topic # work $ git checkout master $ git svn rebase $ git checkout topic $ git rebase master $ git checkout master # And since 10 seconds ago: $ git merge --squash topic # sanity check: $ git svn rebase # push $ git svn dcommit I wouldn't do the squashing actually, as I see no problem with many commits. Actually I find it handier, as you can follow the development better with narrative commit messages etc. The "real" problem IMO is that the commit emails can be annoying and what we miss is a good browser. For this purpose I use gitx locally, which is way faster anyways, or github (to where I push my git svn checkout). Hope this answers your questions. Cheers, Eloy On 3 aug 2009, at 22:15, Matt Aimonetti wrote:
hmm maybe I should give git-svn another chance. (it annoyed me so much I went back to svn)
Eloy, would you mind giving a quick rundown of your setup and workflow?
Thanks,
- Matt
On Mon, Aug 3, 2009 at 1:01 PM, Eloy Duran <eloy.de.enige@gmail.com> wrote: Btw: About git-svn creating many commits, I wouldn't worry about it :) But if you'd like to normalize, I'd do something like:
$ git checkout -b yaml_branch
# work on it
$ git checkout master $ git diff yaml_branch | patch -p1
$ git add . $ git commit -v
Eloy
On 3 aug 2009, at 19:51, Patrick Thomson wrote:
Hi everyone,
I've just pushed my work on a new YAML module to the experimental branch (revision 2184). Rather than being backed by the old syck code that 1.8/1.9 use, this is backed by the libYAML library (BSD licensed). As of right now it appears to be about 4x slower than 1.9's YAML module, but there's a lot of room for optimizing my code.
This new YAML module aims to be wholly compatible with the old API inside yaml.rb. Please test this module out, and let me know if you find any inconsistencies or false results. As of right now it passes the RubySpecs for YAML::dump() and YAML::load().
(Oh, and sorry for spamming the macruby-changes list; git-svn applied something like 40 commits at one time. Oops!)
-- Patrick Thomson _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
Hey Matt, Just to add another data point, I've been using git-svn to interface with a svn repo where some of my git branches are matched to svn branches and others are not. In general, my workflow is: # Make a branch in svn: $ svn cp svn+ssh://path/to/trunk svn+ssh://path/to/branch/yaml_branch # Retrieve the new branch metadata: $ git svn fetch # Creates a new git branch that mirrors the svn branch: $ git checkout -b git_yaml_branch yaml_branch # work on it # Try a little experiment: $ git checkout -b experimental_yaml_branch # work some more # Bring it all together again: $ git checkout git_yaml_branch $ git merge --squash experimental_yaml_branch $ git diff (* just to inspect the changes *) $ git commit -a $ git svn rebase (* don't worry if there was a change before your commit, git will replay yours on top of it *) $ git svn dcommit Also, one more tip on OS X: $ git config --global merge.tool opendiff Then, if there's ever a conflict during a merge or rebase, using "git mergetool" let's you resolve conflicts in FileMerge.app's nice GUI. Hope that helps! - Josh On Aug 3, 2009, at 1:15 PM, Matt Aimonetti wrote:
hmm maybe I should give git-svn another chance. (it annoyed me so much I went back to svn)
Eloy, would you mind giving a quick rundown of your setup and workflow?
Thanks,
- Matt
On Mon, Aug 3, 2009 at 1:01 PM, Eloy Duran <eloy.de.enige@gmail.com> wrote: Btw: About git-svn creating many commits, I wouldn't worry about it :) But if you'd like to normalize, I'd do something like:
$ git checkout -b yaml_branch
# work on it
$ git checkout master $ git diff yaml_branch | patch -p1
$ git add . $ git commit -v
Eloy
On 3 aug 2009, at 19:51, Patrick Thomson wrote:
Hi everyone,
I've just pushed my work on a new YAML module to the experimental branch (revision 2184). Rather than being backed by the old syck code that 1.8/1.9 use, this is backed by the libYAML library (BSD licensed). As of right now it appears to be about 4x slower than 1.9's YAML module, but there's a lot of room for optimizing my code.
This new YAML module aims to be wholly compatible with the old API inside yaml.rb. Please test this module out, and let me know if you find any inconsistencies or false results. As of right now it passes the RubySpecs for YAML::dump() and YAML::load().
(Oh, and sorry for spamming the macruby-changes list; git-svn applied something like 40 commits at one time. Oops!)
-- Patrick Thomson _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
Thanks guys, with the recent merge, I'm giving git-svn another try :) - Matt On Mon, Aug 3, 2009 at 2:32 PM, Josh Ballanco <joshua.ballanco@apple.com>wrote:
Hey Matt,
Just to add another data point, I've been using git-svn to interface with a svn repo where some of my git branches are matched to svn branches and others are not. In general, my workflow is:
# Make a branch in svn: $ svn cp svn+ssh://path/to/trunk svn+ssh://path/to/branch/yaml_branch
# Retrieve the new branch metadata: $ git svn fetch
# Creates a new git branch that mirrors the svn branch: $ git checkout -b git_yaml_branch yaml_branch
# work on it
# Try a little experiment: $ git checkout -b experimental_yaml_branch
# work some more
# Bring it all together again: $ git checkout git_yaml_branch $ git merge --squash experimental_yaml_branch $ git diff (* just to inspect the changes *) $ git commit -a $ git svn rebase (* don't worry if there was a change before your commit, git will replay yours on top of it *) $ git svn dcommit
Also, one more tip on OS X: $ git config --global merge.tool opendiff
Then, if there's ever a conflict during a merge or rebase, using "git mergetool" let's you resolve conflicts in FileMerge.app's nice GUI.
Hope that helps!
- Josh
On Aug 3, 2009, at 1:15 PM, Matt Aimonetti wrote:
hmm maybe I should give git-svn another chance. (it annoyed me so much I
went back to svn)
Eloy, would you mind giving a quick rundown of your setup and workflow?
Thanks,
- Matt
On Mon, Aug 3, 2009 at 1:01 PM, Eloy Duran <eloy.de.enige@gmail.com> wrote: Btw: About git-svn creating many commits, I wouldn't worry about it :) But if you'd like to normalize, I'd do something like:
$ git checkout -b yaml_branch
# work on it
$ git checkout master $ git diff yaml_branch | patch -p1
$ git add . $ git commit -v
Eloy
On 3 aug 2009, at 19:51, Patrick Thomson wrote:
Hi everyone,
I've just pushed my work on a new YAML module to the experimental branch (revision 2184). Rather than being backed by the old syck code that 1.8/1.9 use, this is backed by the libYAML library (BSD licensed). As of right now it appears to be about 4x slower than 1.9's YAML module, but there's a lot of room for optimizing my code.
This new YAML module aims to be wholly compatible with the old API inside yaml.rb. Please test this module out, and let me know if you find any inconsistencies or false results. As of right now it passes the RubySpecs for YAML::dump() and YAML::load().
(Oh, and sorry for spamming the macruby-changes list; git-svn applied something like 40 commits at one time. Oops!)
-- Patrick Thomson _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
You could also use: $ git merge --squash yaml_branch A little easier than piping a diff. Brian. On Mon, Aug 3, 2009 at 16:01, Eloy Duran<eloy.de.enige@gmail.com> wrote:
Btw: About git-svn creating many commits, I wouldn't worry about it :) But if you'd like to normalize, I'd do something like: $ git checkout -b yaml_branch # work on it $ git checkout master $ git diff yaml_branch | patch -p1 $ git add . $ git commit -v Eloy
On 3 aug 2009, at 19:51, Patrick Thomson wrote:
Hi everyone,
I've just pushed my work on a new YAML module to the experimental branch (revision 2184). Rather than being backed by the old syck code that 1.8/1.9 use, this is backed by the libYAML library (BSD licensed). As of right now it appears to be about 4x slower than 1.9's YAML module, but there's a lot of room for optimizing my code.
This new YAML module aims to be wholly compatible with the old API inside yaml.rb. Please test this module out, and let me know if you find any inconsistencies or false results. As of right now it passes the RubySpecs for YAML::dump() and YAML::load().
(Oh, and sorry for spamming the macruby-changes list; git-svn applied something like 40 commits at one time. Oops!)
-- Patrick Thomson _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
Nice! :) On 3 aug 2009, at 22:23, Brian Mitchell wrote:
You could also use:
$ git merge --squash yaml_branch
A little easier than piping a diff.
Brian.
On Mon, Aug 3, 2009 at 16:01, Eloy Duran<eloy.de.enige@gmail.com> wrote:
Btw: About git-svn creating many commits, I wouldn't worry about it :) But if you'd like to normalize, I'd do something like: $ git checkout -b yaml_branch # work on it $ git checkout master $ git diff yaml_branch | patch -p1 $ git add . $ git commit -v Eloy
On 3 aug 2009, at 19:51, Patrick Thomson wrote:
Hi everyone,
I've just pushed my work on a new YAML module to the experimental branch (revision 2184). Rather than being backed by the old syck code that 1.8/1.9 use, this is backed by the libYAML library (BSD licensed). As of right now it appears to be about 4x slower than 1.9's YAML module, but there's a lot of room for optimizing my code.
This new YAML module aims to be wholly compatible with the old API inside yaml.rb. Please test this module out, and let me know if you find any inconsistencies or false results. As of right now it passes the RubySpecs for YAML::dump() and YAML::load().
(Oh, and sorry for spamming the macruby-changes list; git-svn applied something like 40 commits at one time. Oops!)
-- Patrick Thomson _______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
_______________________________________________ MacRuby-devel mailing list MacRuby-devel@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/macruby-devel
participants (5)
-
Brian Mitchell
-
Eloy Duran
-
Josh Ballanco
-
Matt Aimonetti
-
Patrick Thomson