#linuxcnc-devel Logs

Jun 04 2019

#linuxcnc-devel Calendar

05:16 AM struf: memfrob: btw, instead of patching (removing function and then hardcoding rt_cpu_number to 3) ,you could use environment variable as per: if(getenv("RTAPI_CPU_NUMBER"))
10:59 AM seb_kuzminsky: memfrob (if you read back): we have three long-lived branches now: 2.7, 2.8, and master
10:59 AM seb_kuzminsky: 2.7 is for stable releases in the 2.7.x series, only safe changes should go in here (bug fixes, docs fixes, sometimes new components & drivers)
11:00 AM seb_kuzminsky: 2.8 is the stabilization branch for the 2.8.x releases that mozmck will make. It's his call what should go in here, but in general i think it's about the same as what belongs in 2.7
11:02 AM seb_kuzminsky: master is for new features and experimental stuff that might destabilize things for a short while, in the awesome future someone will make the next stable branch (2.9? 3.0?) off master and the cycle continues
11:02 AM mozmck: hi seb_kuzminsky!
11:05 AM seb_kuzminsky: hi mozmck :-)
11:05 AM mozmck: thanks for coming back and helping on this stuff. how's life?
11:06 AM seb_kuzminsky: it's busier than i'd prefer, but good!
11:06 AM mozmck: heh, same here.
11:07 AM seb_kuzminsky: yeah that's how it goes
11:07 AM seb_kuzminsky: what's new with you?
11:07 AM mozmck: Well, new son about 7 weeks old now, working on buying property further in the country and moving, etc.
11:08 AM seb_kuzminsky: wow! congratulations!
11:08 AM mozmck: thanks! that makes 5 now :-D
11:08 AM seb_kuzminsky: that's awesome :-)
11:08 AM seb_kuzminsky: my oldest is in high school now, she just finished driver's ed
11:09 AM seb_kuzminsky: it's kinda crazy
11:09 AM mozmck: Yeah. We weren't able to have any for 14+ years.
11:10 AM mozmck: Don't know why but now God has given us 5 and we are sure blessed.
11:10 AM mozmck: So we are both 43 but our oldest is 7
11:12 AM seb_kuzminsky: that's great, i'm happy for you all
11:13 AM mozmck: thanks!
11:13 AM seb_kuzminsky: jthornton: in commit bf811ba74695 you added some images to docs/html/lathe/images, i think those don't belong there
11:14 AM jthornton: 2.7?
11:14 AM seb_kuzminsky: i think you meant to update the existing images in docs/src/lathe/images
11:14 AM seb_kuzminsky: this is in 2.8
11:16 AM jthornton: opps, I'll fix that
11:17 AM seb_kuzminsky: thanks
11:18 AM jthornton: I'm getting a weird error I've never seen before trying to checkout 2.8 https://paste.ubuntu.com/p/4ZhYPQNGRn/
11:21 AM jthornton: and I see those 4 unstaged files... but don't know where they came from
11:31 AM mozmck: Yeah, I've seen stuff like that in the linuxcnc tree sometimes. I'm not quite sure what is going on, but I just delete the files and then do a checkout.
11:32 AM mozmck: It is saying that those files are in your tree but not "tracked" or part of the git repo for that branch; but the branch you are checking out has those files and will overwrite the ones in the tree.
11:38 AM JT-Shop: ok thanks
11:39 AM linuxcnc-build: build #5954 of 0000.checkin is complete: Failure [4failed] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/0000.checkin/builds/5954 blamelist: Sebastian Kuzminsky <seb@highlab.com>
12:17 PM seb_kuzminsky: oops
12:21 PM linuxcnc-build: build #5955 of 0000.checkin is complete: Failure [4failed] Build details are at http://buildbot.linuxcnc.org/buildbot/builders/0000.checkin/builds/5955 blamelist: Sebastian Kuzminsky <seb@highlab.com>
12:32 PM seb_kuzminsky: wierd, both of those failures was the buildbot building the wrong commit, i've never seen it do that before
12:39 PM JT-Shop: seb_kuzminsky: thanks for that excellent explanation on cherry-pick
12:41 PM mozmck: JT_Shop: does this change look correct for master (and 2.8 maybe?) https://github.com/LinuxCNC/linuxcnc/pull/599/commits/7fe6140609b22eeb49acdb82349ca4d6010e890f
12:43 PM JT-Shop: give me a few and I'll check it out
12:43 PM JT-Shop: gotta go check the fire!
12:48 PM seb_kuzminsky: looks like the script that connects our github repo to the buildbot choked on some unicode in a commit message
01:00 PM jthornton: mozmck: that fix needs to go in 2.7 and merge it's way up to the top
01:00 PM jthornton: how do you want to proceed?
01:01 PM jthornton: bbib burning dead limbs
01:07 PM mozmck: thanks jthornton - looks like seb asked the requester to do it on 2.7 already
01:08 PM mozmck: btw, has 2.7 been merged up recently? andypugh was working on fixing conflicts and was going to test but I don't know if he finished that.
01:26 PM JT-Shop: I don't know where he is at with that
02:40 PM jthornton: mozmck: I made a practice repo to practice merging with conflicts and now have that under my belt so back to work snack time is overwith
02:40 PM mozmck: good deal. I need more practice with that myself.
04:20 PM jthornton: seb_kuzminsky: removed the image files and fixed the .gitignore files, pushed to 2.8 and merged to master!
04:36 PM jthornton: seems like make clean does not remove the generated images...
05:35 PM seb_kuzminsky: mozmck_m, jthornton : andypugh merged 2.7, and i helped a little bit
05:35 PM seb_kuzminsky: 2.7, 2.8, and master are all fully merged
05:35 PM mozmck: oh good! thanks a bunch!
05:36 PM seb_kuzminsky: way back when i started, cradek showed me a super useful trick for dealing with git merges
05:37 PM seb_kuzminsky: git config --add merge.conflictstyle diff3
05:37 PM seb_kuzminsky: with that config variable set, when there's a merge conflict, the conflicted file will get annotated with all three interesting versions of the conflicting hunk
05:38 PM mozmck: Hmm, I'll have to check that out
05:38 PM seb_kuzminsky: the most recent shared ancestor, the local (destination) branch version, and the other branch version (the branch we're merging into the local branch)
05:38 PM seb_kuzminsky: so you can see, ooh, in 2.8 we changed it this way, and in 2.7 we changed it that way
05:39 PM mozmck: Ah, I see - interesting.
05:43 PM mozmck: seb_kuzminsky: I merged rick's PR to 2.7. When merging that to 2.8 and then master - what kind of commit message is best?
05:44 PM JT-Shop: gitkraken doesn't ask for a merge commit message
05:45 PM * JT-Shop takes notes of cradeks trick
05:45 PM mozmck: git command line puts in a default message "Merge branch '2.7' into 2.8"
05:52 PM jthornton: I kinda thought so
06:00 PM seb_kuzminsky: mozmck: yeah, the default message is usually ok
06:00 PM mozmck: ok, thanks
06:00 PM seb_kuzminsky: except i suggest instead of "git checkout 2.8; git merge 2.7", you do something very slightly different:
06:01 PM seb_kuzminsky: git checkout 2.8; git merge origin/2.7
06:01 PM mozmck: huh, why is that?
06:01 PM mozmck: just in case I forgot to pull in the 2.7 branch first?
06:01 PM seb_kuzminsky: by specifying origin/2.7 as the branch you're merging into 2.8, instead of just "2.7", you remove (nearly) any question about what's in that branch
06:02 PM mozmck: makes sense - thanks!
06:02 PM seb_kuzminsky: yeah, you might have run 'git fetch' but not updated you local 2.7 branch with the new commits in origin/2.7
06:02 PM seb_kuzminsky: it's a very minor thing, but i'm trying to convey how i do things, and why
06:03 PM * jthornton is taking notes
06:03 PM mozmck: it's much appreciated!
06:03 PM seb_kuzminsky: another useful git config setting related to merging: merge.log
06:03 PM seb_kuzminsky: it you set it to a big number like 100, it'll include that many commit messages from the branch you're merging in the merge commit message
06:04 PM seb_kuzminsky: so it looks like this: https://github.com/LinuxCNC/linuxcnc/commit/2f12e4567ac30b307db4fae31ebe97e7a19e1725
06:04 PM mozmck: Interesting - that could be useful.
06:04 PM seb_kuzminsky: you can tell at a glance that origin/2.8 was merged, and you get the list of commits that were merged into master
06:04 PM mozmck: nice.
06:04 PM seb_kuzminsky: it's a good sanity check for the person doing the merge too
06:05 PM mozmck: sometimes it's hard to tell what commits were merged - so that is nice.
06:06 PM seb_kuzminsky: here's a neat way to verify that your merge did what you wanted, courtesy of jepler:
06:07 PM seb_kuzminsky: git merge $OTHER_BRANCH; git log --graph --oneline @{upstream}^..
06:07 PM mozmck: That looks like a jepler line...
06:07 PM seb_kuzminsky: that git log will show what you have in your local branch (let's say 2.8), but that's not in the matching remote branch (let's say origin/2.8)
06:07 PM seb_kuzminsky: heh yeah
06:08 PM seb_kuzminsky: "@{upstream}" means "the branch that this current branch was originally forked from"
06:09 PM seb_kuzminsky: then "^" means "the parent of the @{upstream} commit (just for more visibility)
06:09 PM seb_kuzminsky: then ".." means "show me everything from that commit i just named, to the current commit in my working tree"
06:09 PM seb_kuzminsky: i use it so much i have an alias for it:
06:10 PM seb_kuzminsky: [alias]
06:10 PM seb_kuzminsky: pushwhat = log --graph --oneline @{upstream}^..
06:10 PM seb_kuzminsky: ok, i'm taking off
06:10 PM mozmck: that's a good one to have an alias for = it that a git alias or bash alias?
06:10 PM seb_kuzminsky: i think all the buildbot stuff is set for 2.8, let me know if anything wedges
06:10 PM seb_kuzminsky: it's a git alias
06:10 PM mozmck: thanks again for the help!
06:11 PM seb_kuzminsky: so i can say 'git pushwhat' and it'll act like i typed 'git log --graph blah blah'
06:11 PM seb_kuzminsky: i'm happy to help
06:14 PM jthornton: mozmck: is there anything in 2.8 I need to do or look at?
06:15 PM mozmck: I don't know. I'm trying to figure out what I need to do still.
06:15 PM jthornton: I hear that
06:15 PM jthornton: I've updated the documents page on wlo so that's done
06:17 PM mozmck: At some point we need a list of changes from the 2.7 branch. Is there a document on how to update from 2.7 to 2.8 somewhere? Other than that, I think it's mainly work on bugs and make sure it's all stable.
06:19 PM jthornton: hmm, I'll have to see if there is something about updating other than run the config and let the Andy magic happen
06:21 PM jthornton: I know there is a way to get the list of changes... I'll see if I can track that down.
06:22 PM mozmck: We can always use git, but there is a lot of noise in there.
06:22 PM jthornton: yea, let me see what I can sort out in the morning while I drink my coffee
06:23 PM mozmck: ok, thanks. I need to go for now.
06:28 PM memfrob: How crazy am I? https://github.com/NTULINUX/aggressive_kernel_patches -- When I first started working on this Ryzen system, latency was 120K ns on both servo and base. Now it's at 37K ns for servo, 57K ns on base.