Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Locked thread
Stringent
Dec 22, 2004


image text goes here

GameCube posted:

i'd like sourcetree more if it were open source. not out of zealotry but out of the fact that it's buggy and lacking many simple features, for example you can't do git push --force, at least in the windows version, because they feel that force pushing is bad

force pushing is bad. not being able to do it from a gui seems like a perfectly reasonable decision to me.

Adbot
ADBOT LOVES YOU

comedyblissoption
Mar 15, 2006

force pushing on short-lived branches you own is good

exposing force push in a gui would be a disaster even for the above use case b/c it would enable ppl who dont really know what theyre doing to cause disaster to themselves and potentially others, although usually the repo should have sane force push permissions

comedyblissoption
Mar 15, 2006

also sourcetree combined w/ dropping to the cli is good

sourcetree has some really loving obnoxious bugs though

comedyblissoption
Mar 15, 2006

also if you force push make sure you use --force-with-lease b/c git has historically hated sane defaults

cinci zoo sniper
Mar 15, 2013




i usually use sourcetree since i like guis, though sometimes it starts to do sourcetree things and i end up reading it's logs and janitoring things in terminal to see what's up

cinci zoo sniper
Mar 15, 2013




i like that they have coded a particular workflow in so i can just lazily click things and maintain structure that please my eye

Wheany
Mar 17, 2006

Spinyahahahahahahahahahahahaha!

Doctor Rope

GameCube posted:

my first day of git my autistic coworker told me that the best first step when troubleshooting build issues was to run a git clean -xdf. that is a terrible habit to get into, for reasons which i hope are obvious

Xarn
Jun 26, 2015

LeftistMuslimObama posted:


although now that im thinking about it, how the hell are these linked lists set up so that a listnode can appear in multiple lists? granted ive only implemented the naive version from scratch, but Ask about the two lords and the gate spell. isn't a linked list basically done by:

code:

class listnode{
      listnode  next;
      listnode  prev; //if we're doing doubly-linked
      t  data;
}

class list{
     listnode  head;
     listnode  tail; //if you want/you're not doubly linked and want a quicky way to append to the back.
     int count;

    public void add(listnode){...}
    public bool remove(listnode){...}
   //maybe also some helpers for removing at a certain index, etc
}

This usually comes up with very specific resources, but the basic idea is this

code:
struct foo {
    datatype data;
    foo *freelist_prev, *freelist_next;
    foo *servicelist_prev, *servicelist_next;
    ... etc
};
And you generally never actually free nodes, but reuse them. Or, if you want to free them, just check that all ptrs are set to null (you are setting them to null when taking the node out, right? :v:)


But judging from whats been said about this particular case, its completely hosed anyway.

cowboy beepboop
Feb 24, 2001

comedyblissoption posted:

also if you force push make sure you use --force-with-lease b/c git has historically hated sane defaults

quote:

What --force-with-lease does is refuse to update a branch unless it is the state that we expect; i.e. nobody has updated the branch upstream. In practice this works by checking that the upstream ref is what we expect, because refs are hashes, and implicitly encode the chain of parents into their value.

god gently caress you git
brb moving everything to hg

Janitor Prime
Jan 22, 2004

PC LOAD LETTER

What da fuck does that mean

Fun Shoe

my stepdads beer posted:

god gently caress you git
brb moving everything to hg

I really like working with hg and am glad I chose it 5 years ago (mostly cause git windows clients were buillshit) but to this day the tooling around it isn't as refined as with git. I spent like a week looking for good Code Review tools and nothing worked satisfactorily with our Rhodecode server and/or required post push reviews or uploading patches to a server.

GameCube
Nov 21, 2006

Stringent posted:

force pushing is bad. not being able to do it from a gui seems like a perfectly reasonable decision to me.

comedyblissoption posted:

force pushing on short-lived branches you own is good

exposing force push in a gui would be a disaster even for the above use case b/c it would enable ppl who dont really know what theyre doing to cause disaster to themselves and potentially others, although usually the repo should have sane force push permissions

and yet as soon as somebody requested it they put it in the os x build, but not the windows build

GameCube
Nov 21, 2006

also when I was setting up a new machine I googled sourcetree and got an ad for something called kraken which boldly claimed BETTER THAN SOURCETREE which a) is not really a high bar and b) it wasn't, lol. in fact it was dog poo poo garbage

Wheany
Mar 17, 2006

Spinyahahahahahahahahahahahaha!

Doctor Rope
please do not sign your posts

~Coxy
Dec 9, 2003

R.I.P. Inter-OS Sass - b.2000AD d.2003AD

eschaton posted:

you got a source for that? as far as I know, Xserve always used standard 3.5in SATA drives and they would always work

i think he's confusing it with the fact that you had to buy the drive sleds from apple

if you had a one-disk xserve, it came with fake spacers in the other slots.
annoying, but all OEMs do that

E:F;B

~Coxy fucked around with this message at 14:04 on Jul 15, 2016

Jabor
Jul 16, 2010

#1 Loser at SpaceChem

my stepdads beer posted:

god gently caress you git
brb moving everything to hg

hahahaha

"when force pushing, I want my push to silently override absolutely everything upstream, including new commits that appeared after I started my push" - a thing that the git developers actually believe

LordSaturn
Aug 12, 2007

sadly unfunny

LeftistMuslimObama posted:

so it's not really that they are in multiple lists but that somehow references to the nodes are ending up in the wrong place under mysterious circumstances. that's a bitch to debug because how do you even catch a reference creation at an unknown point to get a stack trace?

"wrong" and yet working. it has something to do with what data is being logged to what file

Xarn posted:

But judging from whats been said about this particular case, its completely hosed anyway.

yyyup

memory leaks it is

~Coxy
Dec 9, 2003

R.I.P. Inter-OS Sass - b.2000AD d.2003AD

comedyblissoption posted:

also sourcetree combined w/ dropping to the cli is good

sourcetree has some really loving obnoxious bugs though

not a bug per se but every few weeks I get an email notification from people upvoting / +1 this issue:

https://jira.atlassian.com/browse/SRCTREE-1191

and it never gets fixed

HoboMan
Nov 4, 2010

~Coxy posted:

not a bug per se but every few weeks I get an email notification from people upvoting / +1 this issue:

https://jira.atlassian.com/browse/SRCTREE-1191

and it never gets fixed

this is something i would have put in my initial release of this software because holy poo poo that sounds confusing and useless

like day 1 working here i color coded dev/test/staging/live in everything

Bloody
Mar 3, 2013

GameCube posted:

also when I was setting up a new machine I googled sourcetree and got an ad for something called kraken which boldly claimed BETTER THAN SOURCETREE which a) is not really a high bar and b) it wasn't, lol. in fact it was dog poo poo garbage

its a webview app lol its so awful

VikingofRock
Aug 24, 2008




Jabor posted:

hahahaha

"when force pushing, I want my push to silently override absolutely everything upstream, including new commits that appeared after I started my push" - a thing that the git developers actually believe

I still don't understand why you would be force pushing to a shared repository anyways. That just seems like a bad idea.

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder
protip: if a repo wont let you force push, just delete the branch first and then push it again.

Sapozhnik
Jan 2, 2005

Nap Ghost

VikingofRock posted:

I still don't understand why you would be force pushing to a shared repository anyways. That just seems like a bad idea.

Private topic branches that you want backed up to the central server. If nobody other than you is touching a branch then force-pushing is fine.

HoboMan
Nov 4, 2010

have i mentioned how much i hate TryParse lately?

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

HoboMan posted:

have i mentioned how much i hate TryParse lately?

Idk, I don't think there's anything bad about it that can't be solved with a wrapper

DONT THREAD ON ME
Oct 1, 2002

by Nyc_Tattoo
Floss Finder
every parse is a try parse,

HoboMan
Nov 4, 2010

NihilCredo posted:

Idk, I don't think there's anything bad about it that can't be solved with a wrapper

i shouldn't have to write one and how do i make one that won't confuse other people?

Lutha Mahtin
Oct 10, 2010

Your brokebrain sin is absolved...go and shitpost no more!

comedyblissoption posted:

also sourcetree combined w/ dropping to the cli is good

when a hacker gotta force a push
drop into the shelllllllll

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

HoboMan posted:

i shouldn't have to write one and how do i make one that won't confuse other people?

XML comments. If they prefer to ignore your wrapper and keep playing the ref game with vanilla TryParse, no biggie.

My perspective is probably biased because I can do pretty much whatever I want at work, but personally I never hesitate about adding a new function to the Utils module if I think it's even slightly beneficial. poo poo I added .IsOneOf() and .IsNotOneOf() extension methods for structs and strings just because they read better than .Contains().

Bloody
Mar 3, 2013

i replaced TryParse with CanParse then Parse because LINQing with TryParse is like impossible so i'd rather filter a dataset down to definitely parseable data then select it through the normal parse

gonadic io
Feb 16, 2011

>>=

Bloody posted:

i replaced TryParse with CanParse then Parse because LINQing with TryParse is like impossible so i'd rather filter a dataset down to definitely parseable data then select it through the normal parse

isn't filter then map the same as a flatMap (or andThen or whatever it's called in c#) that returns an option?

NihilCredo
Jun 6, 2011

iram omni possibili modo preme:
plus una illa te diffamabit, quam multæ virtutes commendabunt

gonadic io posted:

isn't filter then map the same as a flatMap (or andThen or whatever it's called in c#) that returns an option?

c# doesn't have option types, so no (the only flatMap in c# is SelectMany which works for collections), although in this particular case you're parsing a value type so you could in principle define the same rules using nullable<T>

in f# it would be a Seq.choose, but since the signature of f#'s Thing.tryParse is string -> bool * Thing (as opposed to string -> Thing option) you'd still be looking at a Seq.filter >> Seq.map operation.

NihilCredo fucked around with this message at 21:03 on Jul 15, 2016

HoboMan
Nov 4, 2010

having the fattest of fingers, i personally find the visual studio feature of copying the line you are on whenever you press ctrl+c extremely annoying when i meant to press ctrl+v and now i have lost what was in the clipboard

e: oh wait this is the internet, i mean: WHO THE gently caress DESIGNED THIS STUPID USELESS poo poo? gently caress, visual studio is an active dumpster fire and the .NET stack can suck my sack

HoboMan fucked around with this message at 22:18 on Jul 15, 2016

eschaton
Mar 7, 2007

Don't you just hate when you wind up in a store with people who are in a socioeconomic class that is pretty obviously about two levels lower than your own?

NihilCredo posted:

Idk, I don't think there's anything bad about it that can't be solved with a wrapper

programming.txt

gonadic io
Feb 16, 2011

>>=

NihilCredo posted:

c# doesn't have option types, so no (the only flatMap in c# is SelectMany which works for collections), although in this particular case you're parsing a value type so you could in principle define the same rules using nullable<T>

in f# it would be a Seq.choose, but since the signature of f#'s Thing.tryParse is string -> bool * Thing (as opposed to string -> Thing option) you'd still be looking at a Seq.filter >> Seq.map operation.

so you're left with two methods that both fail to use the type system to encode invariants. i really want to like f# but having all of the legacy of c# libraries and all of the legacy of the ocaml language seems to be p annoying at times

for bool * Thing, if the parse failed and the bool is false is that thing null or an exception or is it unspecified?

gonadic io
Feb 16, 2011

>>=
although we've got a new person at work with mostly (lots of) python experience. trying to explain the intricacies of how the implicits/traits stack in a large scala project that uses spray/akka is...not great. half of the time i end up with "this is the exact way to do it to make it work. yes it looks the same as the other ways that should work but give actively misleading compiler messages."

GameCube
Nov 21, 2006

HoboMan posted:

having the fattest of fingers, i personally find the visual studio feature of copying the line you are on whenever you press ctrl+c extremely annoying when i meant to press ctrl+v and now i have lost what was in the clipboard

e: oh wait this is the internet, i mean: WHO THE gently caress DESIGNED THIS STUPID USELESS poo poo? gently caress, visual studio is an active dumpster fire and the .NET stack can suck my sack

this wouldn't happen if you installed viemu.

~Coxy
Dec 9, 2003

R.I.P. Inter-OS Sass - b.2000AD d.2003AD

HoboMan posted:

having the fattest of fingers, i personally find the visual studio feature of copying the line you are on whenever you press ctrl+c extremely annoying when i meant to press ctrl+v and now i have lost what was in the clipboard

e: oh wait this is the internet, i mean: WHO THE gently caress DESIGNED THIS STUPID USELESS poo poo? gently caress, visual studio is an active dumpster fire and the .NET stack can suck my sack

turn it off then

Jabor
Jul 16, 2010

#1 Loser at SpaceChem

NihilCredo posted:

c# doesn't have option types, so no (the only flatMap in c# is SelectMany which works for collections), although in this particular case you're parsing a value type so you could in principle define the same rules using nullable<T>

in f# it would be a Seq.choose, but since the signature of f#'s Thing.tryParse is string -> bool * Thing (as opposed to string -> Thing option) you'd still be looking at a Seq.filter >> Seq.map operation.

i mean, for reference types you're probably never going to parse a legitimate input as null either. a standard tryParse pattern of "returns the result on success, or null on failure" would suck in its own ways but would be generally preferable to the existing boolean+outparam version.

The MUMPSorceress
Jan 6, 2012


^SHTPSTS

Gary’s Answer

Jabor posted:

i mean, for reference types you're probably never going to parse a legitimate input as null either. a standard tryParse pattern of "returns the result on success, or null on failure" would suck in its own ways but would be generally preferable to the existing boolean+outparam version.

the one advantage i can think of is that its harder to carelessly use a null return value with the bool + out version.

Adbot
ADBOT LOVES YOU

The MUMPSorceress
Jan 6, 2012


^SHTPSTS

Gary’s Answer
although there's probably a million naked calls to tryparse out there that don't bother to check or capture the return value

  • Locked thread