Opened 12 years ago

Closed 10 years ago

#91 closed task (wontfix)

reorganize egg repository to cut down working copy size

Reported by: felix winkelmann Owned by:
Priority: major Milestone:
Component: extensions Version: 4.2.x
Keywords: repository Cc: Mario Domenech Goulart
Estimated difficulty:

Description (last modified by felix winkelmann)

Checking out the complete egg repository requires a considerable amount of disk space. During a discussion with ashinn, sjamaan, iraikov, zbigniew and mario, we came to the conclusion that it would be a win if one could merely check out the development sources, not the tagged copies. One possible new layout would be:

stable/release/4/spiffy/spiffy.scm
stable/release/4/spuffy/spiffy.setup
...
dev/release/4/spiffy/1.0
dev/release/4/spiffy/1.1
...

Things to keep in mind:

  • the henrietta instances have to be updated to export from the correct URLs
  • the restructuring will invalidate all working copies and likely make it very difficult to check in uncommitted changes, so the change should be announced early enough and be done during of period in which no other repo access can take place
  • IIRC, there exists a cronjob somewhere that automaticaly converts eggdoc files - this has to be modified
  • the code in setup-download that installs from an svn-checkout or local tree must be changed to reflect the new layout
  • we actually will need two instances of henrietta on each egg server: one for the old layout and one for the new
  • all these changes imply that we release a adapted version of the core system once the repo has been reorganized

Some serious work waiting for us ...

Change History (9)

comment:1 Changed 12 years ago by felix winkelmann

Description: modified (diff)

comment:2 Changed 12 years ago by Mario Domenech Goulart

Cc: Mario Domenech Goulart added

comment:3 Changed 12 years ago by Tony Sidaway

Although this would probably impact me as any time I'm developing Chicken software I'm likely to be working on eggs continually, I welcome the proposal and don't mind the minor inconvenience that might be caused by having to adapt a set of uncommitted changes to the new directory structure. After the transition one would just have to repeat the checkout for the new structure and then merge in the changed files, copy the release to the new dev branch, and commit in both branches. Have I missed anything out?

Being able to check out development copies of many eggs easily without a high cost in diskspace would be a very worthwhile change, and one especially evident to me as I'm working on a 10GB Ubuntu installation on a laptop most of the time.

Felix, in your opening entry, you refer to the following pattern for the stable branch:

stable/release/4/spiffy.scm
stable/release/4/spiffy.setup

Do you mean the following?

stable/release/4/spiffy/spiffy.scm
stable/release/4/spiffy/spiffy.setup

If you do the former I think it implies that all source files from all eggs would share the same directory and hence the same file namespace, which would definitely not work without renaming a lot of source files (doc.scm, tests/run.scm, etc). It would also make it difficult to check out the stable branch of a single egg.

comment:4 in reply to:  3 Changed 12 years ago by felix winkelmann

Description: modified (diff)

Replying to tonysidaway:

Felix, in your opening entry, you refer to the following pattern for the stable branch:

stable/release/4/spiffy.scm
stable/release/4/spiffy.setup

Do you mean the following?

stable/release/4/spiffy/spiffy.scm
stable/release/4/spiffy/spiffy.setup

Yes, that's right. Sorry.

If you do the former I think it implies that all source files from all eggs would share the same directory and hence the same file namespace, which would definitely not work without renaming a lot of source files (doc.scm, tests/run.scm, etc). It would also make it difficult to check out the stable branch of a single egg.

Quite right - I incorreclty omitted the eggname.

comment:5 Changed 12 years ago by sjamaan

I think it would be best to give two day's notice, giving people one day to commit pending stuff and locking it the second day. The third day we could actually move it and unlock it.

To lock it we could add a pre-commit-hook that always returns an exit code of 1 and echoes a friendly message that stuff is about to be moved.

comment:6 Changed 12 years ago by felix winkelmann

Description: modified (diff)

comment:7 Changed 12 years ago by felix winkelmann

Milestone: 4.3.0

comment:8 Changed 11 years ago by Ivan Raikov

This idea seems pretty much dead. Shall we close the ticket?

comment:9 Changed 10 years ago by felix winkelmann

Resolution: wontfix
Status: newclosed

Since it is highly likely that the new SYSTEM is going to be used, this is not so much an issue anymore. I'll close this therefore.

Note: See TracTickets for help on using tickets.