roadmap tweaks

This commit is contained in:
Jeremy Kauffman 2016-10-13 16:46:08 -04:00
parent 309594c7a3
commit bdac79fbe5
5 changed files with 44 additions and 34 deletions

View file

@ -41,7 +41,7 @@ It's difficult to compare LBRY to something that doesn't exist yet, but as we un
Additionally, LBRY is the only one of these three to see significant backing outside of the cryptocurrency niche. While we love crypto, we're aiming to be a mainstream, household technology. To that extent, the fact that LBRY has backing from major VCs, tech companies, and Hollywood studios says a lot.
Finally, unlike almost every blockchain company, we've never sold coins to the public. We've put ourselves in a position where the only way we make money is if LBRY is a long-term success. To us, having "skin in the game" is a moral imperative.
Finally, unlike almost every blockchain companyC, we've never sold coins to the public. We've put ourselves in a position where the only way we make money is if LBRY is a long-term success. To us, having "skin in the game" is a moral imperative.
## How is LBRY different from a toaster?

View file

@ -195,7 +195,6 @@ class ContentActions extends Actions
$githubItems = Github::listRoadmapChangesets($cache);
$projectMaxVersions = [];
$closedGroups = [];
foreach($githubItems as $group => $items)
{
if ($items)

View file

@ -29,17 +29,22 @@ class Asana
$taggedTasks = static::get('/tags/' . $tagId . '/tasks', ['completed_since' => 'now'], $cache);
foreach ($taggedTasks as $task)
{
$fullTask = static::get('/tasks/' . $task['id']);
$fullTask = static::get('/tasks/' . $task['id'], [], $cache);
$projectId = $fullTask['memberships'][0]['project']['id'] ?? null;
if ($fullTask['name'] && $projectId && isset($projects[$projectId]))
if ($fullTask['name'])
{
list($projectName, $projectUrl) = $projects[$projectId];
if ($projectId && isset($projects[$projectId]))
{
list($projectName, $projectUrl) = $projects[$projectId];
}
else
{
$projectName = 'Other';
}
$tasks[$tagLabel][] = array_intersect_key($fullTask, ['name' => null]) + [
'project_label' => $projectName,
'badge' => $projectName,
'date' => $fullTask['due_on'] ?? null,
'body' => $fullTask['notes'],
'url' => $projectUrl,
'body' => nl2br($fullTask['notes']) ,
'group' => $tagLabel,
'assignee' => $fullTask['assignee'] ? ucwords($fullTask['assignee']['name']) : ''
];

View file

@ -42,27 +42,21 @@ class Github
$sets = [];
$allReleases = [];
$projects = [
'lbry' => ''
];
$project = 'lbry';
$page = 1;
foreach ($projects as $project => $label)
do
{
$page = 1;
do
$releases = static::get('/repos/lbryio/' . $project . '/releases?page=' . $page, $cache);
$page++;
$allReleases = array_merge($allReleases, array_map(function ($release) use ($project)
{
$releases = static::get('/repos/lbryio/' . $project . '/releases?page=' . $page, $cache);
$page++;
$allReleases = array_merge($allReleases, array_map(function ($release) use ($label, $project)
{
return $release + ['project_label' => $label, 'project' => $project];
}, array_filter($releases, function ($release)
{
return isset($release['tag_name']) && isset($release['published_at']) && $release['published_at'] &&
$release['tag_name'] != 'v0.4.0';
})));
} while (count($releases) >= 30);
}
return $release + ['project' => $project];
}, array_filter($releases, function ($release)
{
return isset($release['tag_name']) && isset($release['published_at']) && $release['published_at'];
})));
} while (count($releases) >= 30);
foreach ($allReleases as $release)
{
@ -70,17 +64,17 @@ class Github
$matches = null;
if (isset($release['tag_name']) && preg_match('/v(\d+)\.(\d+).?(\d+)?/', $release['tag_name'], $matches))
{
$group = $release['project_label'] . ' v' . $matches[1] . '.' . $matches[2];
$group = 'v' . $matches[1] . '.' . $matches[2];
}
if ($group)
{
$sets[$group][] = array_intersect_key($release, [
'prerelease' => null, 'tag_name' => null, 'published_at' => null, 'project' => null, 'project_label' => null
'prerelease' => null, 'tag_name' => null, 'published_at' => null, 'project' => null
]) + [
'date' => date('Y-m-d', strtotime($release['created_at'])),
//I thought published_at, but GitHub displays created_at and published_at is out of sync sometimes (0.3.2, 0.3.3)
'name' => $release['name'] ?: $release['tag_name'],
'github_url' => $release['url'],
'url' => $release['html_url'],
'major_version' => $matches[1],
'minor_version' => $matches[2],
'patch_version' => isset($matches[3]) ? $matches[3] : null,

View file

@ -14,6 +14,16 @@
</div>
</div>
</div>
<div class="content content-light spacer2">
<h4>Roadmap Notes</h4>
<p>
Our roadmap pulls change note directly from our Git repo via <a href="https://github.com/lbryio/lbry" class="link-primary">GitHub</a>.
Ongoing, Upcoming and Future items are pulled directly from our internal project management system (<a href="https://asana.com" class="link-primary">Asana</a>), so they are always up-to-date.
</p>
<p>
This roadmap only outlines past and anticipated technical changes, it does not cover other initiatives. Development was fast and furious among a small group prior to 0.6, and release notes are sparse.
</p>
</div>
<div style="max-width: 800px; margin: 0 auto">
<div class="roadmap-container" id="project-roadmap">
<div class="text-center"><a href="javascript:;" class="link-primary show-all-roadmap-groups">Show Earlier Releases</a></div>
@ -47,16 +57,17 @@
</div>
<?php endif ?>
<h3 class="roadmap-item-title">
<?php echo $item['name'] ?>
<?php if (isset($item['url']) && $item['url']): ?>
<a href="<?php echo $item['url'] ?>" class="link-primary"><?php echo $item['name'] ?></a>
<?php else: ?>
<?php echo $item['name'] ?>
<?php endif ?>
</h3>
<div class="roadmap-item-date">
<?php echo $item['date'] ? date('m-d-Y', strtotime($item['date'])) : '' ?>
</div>
<div class="roadmap-item-content">
<?php echo $item['body'] ?: '<em class="no-results">No description</em>' ?>
<?php if (isset($item['github_url'])): ?>
<?php endif ?>
</div>
</div>
<?php endforeach ?>
@ -64,5 +75,6 @@
<?php endforeach ?>
</div>
</div>
<?php echo View::render('nav/_learnFooter') ?>
</main>
<?php echo View::render('nav/_footer') ?>