aboutsummaryrefslogtreecommitdiffstats
path: root/storage/filesystem/internal
Commit message (Collapse)AuthorAgeFilesLines
* dotgit: rewrite the way references are looked upMiguel Molina2017-08-262-24/+76
| | | | | | Now there's only two ways of getting a reference, by checking under refs/ directory or in packed-refs. refs/ directory is checked using a direct read by reference name and packed refs are cached until they have been changed. Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
* prevent PackWriter from using Notify if nothing was writtenMiguel Molina2017-08-102-1/+22
| | | | Signed-off-by: Miguel Molina <miguel@erizocosmi.co>
* packfile: create packfile.Index and reuse itSantiago M. Mola2017-07-261-12/+8
| | | | | | | | | | | | | | | There was an internal type (i.e. storage/filesystem.idx) to use as in-memory index for packfiles. This was not convenient to reuse in the packfile. This commit creates a new representation (format/packfile.Index) that can be converted to and from idxfile.Idxfile. A packfile.Index now contains the functionality that was scattered on storage/filesystem.idx and packfile.Decoder's internals. storage/filesystem now reuses packfile.Index instances and this also results in higher cache hit ratios when resolving deltas.
* Merge pull request #491 from smola/error-checksMáximo Cuadros2017-07-192-6/+30
|\ | | | | *: add more IO error checks
| * storage/filesystem: check all Close errorsSantiago M. Mola2017-07-191-4/+4
| |
| * test: add more PackfileWriter testsSantiago M. Mola2017-07-191-2/+26
| |
* | storage: dotgit, fix test not closing filesMáximo Cuadros2017-07-192-0/+2
| |
* | storage: dotgit, close temp file before renameMáximo Cuadros2017-07-181-6/+9
|/
* Fixed modules directory pathCromel-PC\Cromel2017-06-282-2/+2
|
* fix race on packfile writerSantiago M. Mola2017-06-271-1/+1
|
* internal/dotgit: rewrite code to avoid stackoverflow errorsAntonio Jesus Navarro Perez2017-06-191-6/+6
|
* fix merge commitMáximo Cuadros2017-06-181-4/+0
|
* *: upgrade to go-billy.v3, mergeMáximo Cuadros2017-06-181-0/+4
|\
| * Merge pull request #369 from smola/windowsMáximo Cuadros2017-06-172-11/+10
| |\ | | | | | | Windows support
| | * dotgit: support reading reference files in WindowsSantiago M. Mola2017-06-021-9/+8
| | |
| | * test: more Windows path handlingSantiago M. Mola2017-06-021-2/+2
| | |
* | | *: upgrade to go-billy.v3, mergeMáximo Cuadros2017-06-184-32/+32
|/ /
* / storage/filesystem: call initialization explicitely, fixes #408Santiago M. Mola2017-06-011-1/+1
|/ | | | | | | | | | | | | filesystem.Storage was initializing the gitdir (creating objects and refs) on NewStorage. But this should be done only on init and clone operations, not on open. Now there is a new interface storer.Initializer that storers can implement if they need any initialization step before init or clone. filesystem.Storage is one of such implementations. git.Init and git.Clone now call to the storer Init() method if it does implement it. Otherwise, it just ignores initialization.
* storage: filesystem, initialize the default folder scaffoldingMáximo Cuadros2017-05-212-0/+52
|
* use go-billy.v2 versionAntonio Jesus Navarro Perez2017-03-104-4/+4
|
* project: move imports from srcd.works to gopkg.inAntonio Jesus Navarro Perez2017-03-074-11/+11
| | | | To be able to fix #261 we will move again to gopkg.in before v4 stable release.
* documentation and API improvementsMáximo Cuadros2017-02-212-14/+177
|
* storage: git.Storer move to storage.Storer and module handlingMáximo Cuadros2017-02-121-4/+9
|
* new srcd.works/go-git.v4 pathMáximo Cuadros2017-01-303-6/+6
|
* new git fixture pathMáximo Cuadros2017-01-302-2/+2
|
* rename billy importsMáximo Cuadros2017-01-302-4/+2
|
* storage: IndexStorer implementationMáximo Cuadros2017-01-282-0/+43
|
* Extract billy (#173)Sergio Arbeo2016-12-194-19/+23
| | | | | | | | | | | | | | | * Extract billy Billy is a new library directly extracted from go-git. It abstract several storages systems in a filesystem interface. More in github.com/src-d/billy * Fix grouping in imports block * Update billy to v1 * Re-remove fs_implementation example
* storage: shallow storage (#180)Máximo Cuadros2016-12-152-1/+89
| | | | | | | | * storage: shallow storage * changes * changes
* revision based on goreportcard.comMáximo Cuadros2016-12-061-0/+1
|
* storage: filesystem, clean close when the packfile is not used (#140)Máximo Cuadros2016-11-282-14/+65
|
* new plumbing package (#118)Máximo Cuadros2016-11-083-44/+44
| | | * plumbing: now core was renamed to core, and formats and clients moved inside
* utils: fs, new memory filesystem (#108)Máximo Cuadros2016-11-042-3/+3
| | | | | | | | * utils: fs, new memory filesystem * utils: fs, renamed os.NewOS to os.New * utils: fs, memory changes requested by @alcortes
* storage/filesystem: implement missing functionality. (#110)Santiago M. Mola2016-11-032-0/+46
| | | | | | | * storage/filesystem: added ObjectStorage Set. * storage/filesystem: now passes all tests, except those specific to transactions. * formats/config: Encoder now encodes subsections with no options. * formats/config: add HasSubsection on Section. * dotgit: add Ref method to get specific reference.
* utils/fs: move 'os' and 'test' to separate packages. (#93)Santiago M. Mola2016-10-242-5/+5
| | | | | | * create utils/fs/test package to expose generic test suite to 3rd party fs implementations. * move 'os' to its own package to avoid cyclic dependency (test -> fs -> test, becomes test -> fs, os -> test, os -> fs). * remove TestCreateAndWrite: some of our implementations cannot read a file that was just created, written and not closed yet.
* utils: fs.TempFile (#88)Máximo Cuadros2016-10-191-11/+3
| | | | | | | | | | * utils: fs generic TestSuite * fs: fs.TempFile * utils: fs small changes requested * utils: fs, test fs.Create overwriting files
* formats: objfile idomatic reader/writerMáximo Cuadros2016-09-255-438/+549
|
* fix buildMáximo Cuadros2016-09-201-2/+2
|
* dotgit: synced write packfile and index generationMáximo Cuadros2016-09-152-32/+167
|
* fixtures: new fixture package being use in all packagesMáximo Cuadros2016-09-121-30/+12
|
* format: packfile fix ReadObjectAt without decodeMáximo Cuadros2016-09-111-2/+11
|
* storage: filesystem ref storage, and not not exists file handlingMáximo Cuadros2016-09-102-2/+33
|
* storage: filessytem read multiple packfiles support and index decodingMáximo Cuadros2016-09-094-2522/+140
|
* format: packfile based on ObjectStorage and CRC32 calculationMáximo Cuadros2016-09-082-27/+34
|
* format: packfile new interfaceMáximo Cuadros2016-09-073-20/+39
|
* format: packfile new interface (wip)Máximo Cuadros2016-09-062-43/+13
|
* storage: filesystem idx generation (wip)Máximo Cuadros2016-09-064-322/+284
|
* core: ObjectStorage.WriterMáximo Cuadros2016-09-051-7/+17
|
* Support non packed objects (#68)sona-tar2016-08-303-5/+206
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Support non packed git objects * Support non packed git objects for Iterator * Fix error handling from Writer() in FillObject() * Fix format in func (r *Reader) FillObject(obj core.Object) error * Fix to return d.addRefsFromPackedRefs() error And if packed-refs dosen't exist not to return error in d.addRefsFromPackedRefs * Remove debug code * Add GoDoc for func (d *DotGit) Objectfile(h core.Hash) (fs.FS, string, error) * Add GoDoc for func (r *Reader) FillObject(obj core.Object) error * Add GoDoc for func (d *DotGit) Objectfiles() (fs.FS, []core.Hash, error) * Fix format in func (d *DotGit) Objectfile(h core.Hash) (fs.FS, string, error) * Rename value dotGitobjcts -> objsDir * Change regexp.Compile -> regexp.MustCompile * Move regexp to variable initialization * Rename regexp value to be more coherent * Fix object directory name and object file name to correct character * Faster Objectfiles func * Add test for FillObject * Add GoDoc for func (s *ObjectStorage) Get(h core.Hash) (core.Object, error) * defer Close() * Return name values for defer function overwrite the error value. * Fix error handling in func (s *ObjectStorage) Get() Return error that gets error except for ErrObjfileNotFound from getFromUnpacked() * Rename getFromObject -> getFromUnpacked * Add test for func (d *DotGit) Objectfile(h core.Hash) (fs.FS, string, error) * Add test for func (d *DotGit) Objectfiles() (fs.FS, []core.Hash, error) * Faster check git object name * Faster dotgit_test.go * Fix Godoc for Objectfiles func * Refactor variable name in Objectfiles func * Fix GoDoc for objectfile func * Fix TestObjectfile func and TestObjectfiles func * Rename fixobj -> fixObj in Test Objectfile func * Fix test compare method * Refactor Get func in object.go * Refactor getFromUnpacked func in object.go * Fix GoDoc for ErrObjfileNotFound * Fix TestObjectfiles for not guarantee the slice order * Change error no such file or directory to target file not found * Change spec func (s *ObjectStorage) Get(h core.Hash) (core.Object, error) return core.ErrObjectNotFound, if index pointer is nil. * Add space * storage: Add object type hint parameter to ObjectStorage.getFromUnpacked
* storage: support ConfigStorage, memory done, fs wipMáximo Cuadros2016-08-202-3/+26
|