Source Code Access

Gedan

BUTTS BUTTS BUTTS
Staff member
Aug 26, 2015
8,008,896
8,008,326
EDIT: Public source code is here.

We're investigating what we actually wanna do right now.

Truthfully, people providing automated builds of up-to-the-minute commits was only a part of the reason that we made the Github repository private. A secondary, and arguably more immediately pressing concern, was the fact the repo was the most "popular" AS3 project on Github.

kFPMEQZ.png


We've probably been toeing a line all these years by having the source on github period, but having it placed front-and-center in the public eye was going to earn us the boot sooner or later. Smashing the Privacy button is a quick-fix in the face of that, mainly to ensure we buy ourselves as much potential time as possible whilst we sort an alternative.

As for what we're doing about it...

We're moving away from Github, almost certainly, to a self-hosted instance of Gitlab.
TiTS' source is going to be broken into two versions; a public repo and a private repo.
Part of our automated build process will push changes from the private repo to the public one whenever we do a public build.
I'm still investigating automation tools to assist us going the other way, so everything isn't reliant on my-and-mine-alone knowledge of Git tooling.

As part of this, actually asking for Github access will mostly be irrelevant. The public version of the repo should be anonymously accessible, just as things were on Github.
 
Last edited:
  • Like
Reactions: Sicaa and Redjoker

Noob Salad

Captain Shitpost
Aug 26, 2015
4,372
1,560
the repo was the most "popular" AS3 project on Github
noice

So for pull requests, would you merge into the public repo, and then again into the private one?
 
Last edited:

Gedan

BUTTS BUTTS BUTTS
Staff member
Aug 26, 2015
8,008,896
8,008,326
Yeah, that's part of the automation process that I want to implement. I'm learning my way through the Gitlab CI system at the minute, which is going to be part of it; for a PR to merge, it has to compile, and once it passes muster it should get merged into the public AND private versions at the same time.

It'll also people other than me will need to be more disciplined about branch usage on our end :yes:
 

Gedan

BUTTS BUTTS BUTTS
Staff member
Aug 26, 2015
8,008,896
8,008,326
also oh boy do I love throwing days into shit completely unrelated to actually getting work on the fucking game content done!!!!
 

Dorkulon

Well-Known Member
Sep 10, 2015
89
25
Part of our automated build process will push changes from the private repo to the public one whenever we do a public build.
I'm still investigating automation tools to assist us going the other way, so everything isn't reliant on my-and-mine-alone knowledge of Git tooling.
I would strongly recommend you do entire-repo multiple snapshot backups when you implement this; it can be astoundingly painful to recover such if and when Jenkins or whatever decides to go nutzoid, or you hit one of the edge conditions where suddenly lots of your commits become unreachable and the tree implodes, or git repack and git fsck decide to not play nice-nice with each other, or... *shiver* *twitch*
 

Redjoker

New Member
Dec 1, 2016
2
0
32
This is something I've been worried about for a while (ever since they introduced that "no even potentially objectionable content" bullshit policy), it's really nice to see you've been thinking about it as well.

And don't think you're wasting your time, a day spent on infra is 30 days saved when some random mod with a stick up their arse deletes your entire repository and you have to recover it!
 

timdraco

Member
May 24, 2016
21
4
If you guys don't mind my input on this, the only problem is that the gitlab ci system has a nasty habit of getting hacked server side and losing data. Make sure to back up everything and I do mean everything you post on there either to a personal computer or cloud so you have copy's. I have lost more data on that system due to hacks then any other download software.
 
Last edited:

LurkyDory

Member
Sep 10, 2015
16
0
It was bound to happen I suppose. I am not at all surprised at the popularity. AS is kind of a dying language in the grand scheme of things.
What I am more surprised by is that someone would actually bother setting up an automatic build system for the repo. :)
 

ElAcechador

Active Member
May 7, 2016
32
6
I know it's probably a bit late, but you guys might wanna try Go Git Service instead, since gitlab is far more ressource intensive than it should be and can slow down to a crawl trying to display simple diffs between commits. Meanwhile, GOGS can run on a raspberry pi.
 

Gedan

BUTTS BUTTS BUTTS
Staff member
Aug 26, 2015
8,008,896
8,008,326
GOGS got looked at and fired out of a cannon. One guy is acting as overlord of maintaining the codebase and whilst I was playing around with it, the latest release failed to handle teams/groups properly.

tl;dr theres a fork that has an actual team behind it that seems to be moving faster than GOGS called Gitea - at the very least it wasn't busy falling on its face handling teams, so it's what I've ended up using.

The Gitea instance will likely never be public. At first I was considering managing a private and a public repo there, but considering the size of the TiTS repo, I don't want to have to handle all the storage requirements for forks. Basically, the Gitea instance ensures we can always work on the game with minimal interruptions from providers of the hosting service.

What we're going to do is push out code as part of the build process to other service(s). There's a new TiTS repo on github expressly for the public code releases now, and should Github deign to delete/restrict/ban that repo, then we'll move to somewhere else. I think somebody is actually running a massive public gitlab instance for ~adult games~ that I can't remember the name of now. I'd be hesitent to tie our actual working base repo there, but as an outlet for public code releases it would probably work. I might have to track it down and have some words with the people that run it and see.

Fork and work against the repo on github. Anything you change/contribute/pr there can be brought back across, and I guess those that prove themselves exceptionally competent will eventually wind up with direct access to the Gitea version.

Also I suppose I'd better actually go slap a license on stuff or something.
 

Dorkulon

Well-Known Member
Sep 10, 2015
89
25
Also I suppose I'd better actually go slap a license on stuff or something.
I would also suggest, while you're at it, to come up with a Contributor License Agreement so that you can have all your ducks in a row in regard to submissions; if nothing else, it could clarify that y'all have the right to continue storylines or whatever when the original author moves on to greener pastures.

FWIW, I used gitolite as a very light ACL front-end for git, and didn't hate it too much - but it may be more grubbing around with administration for people's tastes.
 

Kitteh6660

Well-Known Member
Creator
Aug 26, 2015
280
141
29
So with all those changes, how would I get around to contributing? I've written a functional code for shift-clicking to discard items.

Do I leave a pull request on public repository or what?
 

Karretch

Well-Known Member
Aug 26, 2015
2,068
304
Is there a way for read-only access of backer builds?? I like to typo/bug hunt and having the code allows me to easily figure out what went wrong to post in bug forum.
 

Noob Salad

Captain Shitpost
Aug 26, 2015
4,372
1,560
Too easy to catch text from image, too hard to prevent copy and pasting.
 

Gedan

BUTTS BUTTS BUTTS
Staff member
Aug 26, 2015
8,008,896
8,008,326
Is there a way for read-only access of backer builds?? I like to typo/bug hunt and having the code allows me to easily figure out what went wrong to post in bug forum.

This might be an unpopular opinion, but I actually find "potential fixes" a mixed bag. Yes, more often than not they may actually fix a specific instance of an issue, but they often miss a deeper underlying problem or pay no heed to the reason things were they way they were. I can't remember ever having just slammed in a potential fix that somebody has posted about without then also spending a while digging around to see if I can fish up anything else potentially related too, and in many cases, I would have found all the issues faster with a save and fdb.
 

Karretch

Well-Known Member
Aug 26, 2015
2,068
304
I meant bugs specifically related to the text/scene in an of itself, not anything deeper, like parser issues, missing if statements or the whole page being bold, but I see your point.
 

Dorkulon

Well-Known Member
Sep 10, 2015
89
25
A fix in isolation with no context is unhelpful unless it's something immediately and blatantly obvious. The best bug reports I've encountered (in my professional life) have been with a statement of the problem, how to reproduce the problem, and an analysis of the problem. Even if the fixes aren't what's needed (covering up a deeper issue, for instance) the analysis is usually helpful.

Especially with code from multiple authors with global variables and ill-defined datastructures, the 'obvious' fix is often fairly wrong.
 

Tricks

Member
Jun 6, 2016
5
0
Will we have still have access to the public build source or maybe to old instances of the source? I have been looking into how to add pinch zoom for Android versions.
 

Wishbringer

New Member
Apr 5, 2017
1
0
49
So that's what happened, when the repository changed it didn't occur to me to check the forum (socially awkward, except towards my cats).
I'm obsessive about perfection, so I play with source-code, kinda like my cats (cn=7) play with toys.
 
Last edited:
K

Krynh

Guest
I mean a commit, the last one was 26 days ago? Though oddly, the OXOIndustries page says it was updated 6 days ago.
It will get one when the next public build is out, that's why its called the public source code.
 

Exastiken

New Member
Mar 25, 2016
4
0
It will get one when the next public build is out, that's why its called the public source code.

But wasn't there a steady stream of almost-daily commits up until 27 days ago? I asked because it seems the lack of commits seemed unusual this month.
 

Karretch

Well-Known Member
Aug 26, 2015
2,068
304
What you're probably seeing is the private master build being merged with the public one, commit history and all. The public version isn't updated until a public build drops.