This page is primarily intended for Mercurial's developers.

4.4 Sprint

Subscribe to this page so you don't miss updates!

The sprint will be held from September 29--October 1, 2017 at Facebook Dublin in Ireland.

The address is 4 Grand Canal Square, Grand Canal Dock, Dublin 2, Ireland (Google Maps).

For a visa letter, please contact ‎Andras Belokosztolszki‎ (andrasbelo AT fb DOT com). Please include full name (as in passport), DoB, passport number, issue date, expiry date, exact dates of travel, nationality, country of residence, ideally passport copy.

1.1. Agenda

The Agenda Available as a Google Spreadsheet

Friday will include intros, presentations about the state of the Mercurial project, and "Vision Statements" about possible futures of the project, followed by breakout sessions to discuss topics more in depth.

Saturday is primarily dedicated to additional breakout sessions.

Sunday will focus on writing some code based on ideas discussed in the sprint, and then ending with presentations about cool prototypes, new functionality, and similar tech talks.

We need additional people to sign up for Vision Statements and Tech Talks!

2. Arrival logistics

Please make sure you fill in the attendee list below. 24 hours before the event the badges will be requested. At the Facebook office we will have the "Live Lounge" room on the 6th floor. WiFi, AV and Flipboard will be available. Any issues on the day ping me on (andrasbelo AT fb DOT com).

2.1. Attendance

Everyone is welcome, from core developers to aspiring contributors. Attending a Mercurial sprint is usually a good way to kickstart your contributions as you'll have a large amount of help available for 3 full days.

Name Coming from Need funding Hotel In town dates Siddharth Agarwal San Francisco no Marker Hotel Sept 28-Oct 2 Martin von Zweigbergk SF Bay Area no Clayton Cardiff Lane Sept 28-Oct 2 Augie Fackler Pittsburgh no Clayton Cardiff Lane Sept 28-Oct 2 Yuya Nishihara Japan yes Clayton Cardiff Lane Sept 28-Oct 2 RyanMcElroy London no Clayton Cardiff Lane Sept 28-Oct 4 Adam Simpkins SF Bay Area no Marker Hotel Sept 28-Oct 2 Durham Goode SF no Clayton Cardiff Lane Sept 28-Oct 1 Mark Thomas London no Clayton Cardiff Lane Sept 28-Oct 2 Kevin Bullock Saint Paul yes Clayton Cardiff Lane Sept 27-Oct 2 Kostia Balytskyi London no Clayton Cardiff Lane Sept 28-Oct 4 KyleLippincott SF Bay Area no Clayton Cardiff Lane Sept 26-Oct 2 Rodrigo Damazio SF Bay Area no Staying with friends Sept 27-Oct 2 Phil Cohen SF no Marker Hotel Sept 28-Oct 2 Simon Whitaker London no Clayton Cardiff Lane Sept 28-Oct 1 Andras Belokosztolszki London no The Spencer Hotel Sept 28-Oct 1 Aaron Kushner SF no Marker Hotel Sept 28-Oct 1 DannyHooper SF Bay Area no Clayton Cardiff Lane Sept 28-Oct 2 Rishabh Madan India yes Clayton Cardiff Lane Sept 28-Oct 2 Pulkit Goyal India maybe Clayton Cardiff Lane Sept 28-Oct 2 KatsunoriFujiwara Japan yes Clayton Cardiff Lane Sept 28-Oct 2 Gregory Szorc SF no Clayton Cardiff Lane Sept 28-Oct 2 Chingis Dugarzhapov Amsterdam no TBD Sept 29-Oct 1 Boris Feld Paris no Airbnb nearby Sept 29-Oct 1 Denis Laxalde Toulouse no Airbnb nearby Sept 29-Oct 1 Mads Kiilerich Denmark no Clayton Cardiff Lane Sept 28-Oct 2

We need funds to pay flights and hotel for a few independent contributors.

Recent sprints sponsoring budgets were around $10,000.

Sponsoring Companies:

Apastron Co

Google

Facebook

Please offer your sponsoring

Sponsor point of contact: E-mail mercurial-steering AT mercurial-scm.org

4. Meals

Having food delivered for lunch is usually preferred as it helps us get back to work quicker. We usually go out for dinner to help people cool off after a day of work.

5. Possible Topics

Important things we want to discuss: (add your own)

5.1. Windows Testing

AugieFackler had problems during our last set of security patches validating things on Windows. He'd like to work with someone to document the steps required to go from an empty Windows VM to a working testsuite for development purposes.

5.2. narrowhg

Recently several people have started kicking the tires on narrowhg. I think we've got a subset of narrowhg that could be fused with the recently-imported sparse code and landed in core. I'd like to discuss this further.

5.3. Mononoke

Facebook is working on a distributed Mercurial server in Rust. sid0 can do a status update: where we're going, what it's meant for, and what can be useful to the broader Mercurial community.

5.4. Rust

Seriously consider using Rust for new native code.

5.5. Review Tooling

Phabricator. It's probably nice for contributors and usable thanks to the new dashboard. But still the email interface seems plain useless for me (yuja) and it's painful to quickly scan what's going on.

How to increase review particpation

5.6. GUIs for enterprise deployment

Google would like to deploy a recommended GUI for engineers to use, but all the available options seem to have some shortcoming (for instance, many bundle their own hg and only work with that). We don't have the bandwidth to invest in fully developing a GUI, but would like to discuss adapting an existing one for use in controlled deployments.

5.7. hg show

Move to core?

Turn views into actual commands (like hg swork )?

5.8. style guide changes/improvements

CAPITAL_WITH_UNDERSCORE constants?

CapitalizedCase classes?

camelCase locals? underscore_locals?

Full PEP8 adoption?

"""Normalized docblock rules"""?

Appoint a "style czar" to make decisions and avoid endless bikesheds?

5.9. Support for long paths on Windows

Should we automatically prepend //?/ to all absolute paths?

How Python3 migration affects these plans

5.10. Backup file madness (`foo.orig`)

There's a can of worms surrounding backup file names: They can clobber tracked files that happened to be called something ending in .orig (issue 5685) scmutil.origpath uses absolute filenames and doesn't support windows well (comments in https://phab.mercurial-scm.org/D680)

What can we do to resolve these problems?

5.11. In-repo config files

Allow per-repo revsets, templates, command aliases, etc defined via in-repo files.

PoC with discussion https://phab.mercurial-scm.org/D98

Need to hash out various security and UX concerns

5.12. Sparse in core

Do we need a new dirstate concept to represent "elided" files? e.g. how do you purge files outside the sparse profile?

UI bikeshedding

Path to non-experimental

profile-specific branches?

remappings in working directory?

5.13. hg workspaces

Demo the prototype 'hg workspaces' extension. An alternative to local bookmarks

5.14. hg restack

Discuss the path to upstreaming hg restack (i.e. similar to hg evolve)

Getting hash preservation into core for the 4.5 release

5.15. Dirstate

Refactors needed for easier integration with FUSE filesystems

Refactors needed for better scaling

5.16. Sparse/Lazy changelog

Refactoring the changelog in H1 to not require all of history

5.17. remotenames

Go over the plan for upstreaming the remotenames extension

5.18. topics/named branches

Pulkit is working on improving topics and trying to upstream some good ideas from topics to named branches.

5.19. Corporate self-review

What community standard should we have around a company's employees reviewing their coworker's code?

Augie touched on this in his speech -- be aware of biases

Shall companies have directories inside the codebase where they can play with in-progress ideas before getting "full review"?

5.20. Shell prompts

No one wants to own up to putting this on the spreadsheet, so I'm going to assume this is about prompts... in your shell. whatever that means.

5.21. Automatic code formatting

Google is working on a hg fix method that runs things like clang-format, etc. We want to talk about the UX here, possibly upstreaming it, etc. An extension has been developed for Mozilla to apply and gracefully merge code formatting: https://bitbucket.org/octobus/format-source



5.22. Locking

¯\_(ツ)_/¯

Adam?

5.23. Topic 1

sub topic 1.a

sub topic 1.b

6. Sprint Notes

General overview (drop the anti spam part): https://public.etherpad-mozilla.org/p/sprint-hg4.4-NOSPAMREMOVETHATLASTPAST

Copy of notes archived at 4.4sprint/Notes.

CategoryMeetings