Releases: no-src/gofs
Releases · no-src/gofs
v0.8.2
Fixed
- Fix the dead link for Vue.
Enhancements
- Add the
Sizestructure to support humanize size units. - Support custom the timezone in docker.
- Add go1.22 support and remove go1.20.
- Support all the cache drivers.
- Remove the
encrypt_testbuild tag. - Remove unsupported vfs type.
- Update dependency schedule interval to monthly.
- Update dependency, golang.org/x/time v0.4.0 => v0.5.0.
- Update dependency, golang.org/x/crypto v0.15.0 => v0.18.0.
- Update dependency, golang.org/x/oauth2 v0.14.0 => v0.16.0.
- Update dependency, github.com/quic-go/quic-go v0.40.0 => v0.41.0.
- Update dependency, github.com/minio/minio-go/v7 v7.0.64 => v7.0.66.
- Update dependency, google.golang.org/grpc v1.59.0 => v1.61.0.
- Update dependency, google.golang.org/protobuf v1.31.0 => v1.32.0.
- Update dependency, actions/setup-go 4 => 5.
- Update dependency, github/codeql-action 3 => 4.
v0.8.1
Fixed
- Fix push MinIO and SFTP files once are ineffective.
- Update duration to 100 years that test certificate is valid for.
Enhancements
- Add windows arm64 release.
- Move the common code to the nsgo package.
- Support specifying MinIO path in MinIO synchronization scenes.
- Add the
Pathstructure. - Update README docs, add the Contributing section.
- Update dependency, golang.org/x/oauth2 v0.12.0 => v0.14.0.
- Update dependency, golang.org/x/crypto v0.13.0 => v0.15.0.
- Update dependency, golang.org/x/net v0.16.0 => v0.17.0.
- Update dependency, golang.org/x/time v0.3.0 => v0.4.0.
- Update dependency, github.com/quic-go/quic-go v0.39.0 => v0.39.3.
- Update dependency, github.com/fsnotify/fsnotify v1.6.0 => v1.7.0.
- Update dependency, google.golang.org/grpc v1.58.2 => v1.59.0.
- Update dependency, github.com/schollz/progressbar/v3 v3.13.1 => v3.14.1.
v0.8.0
Fixed
- Add
init-env.shscript to fix the UDP buffer sizes.
Enhancements
- Remove the
ssh_keyflag and add some parameters forsourceanddestflags to configure the authentication info for SFTP. - Add the
copy_linkandcopy_unsafe_linkflags to control the synchronization of the symbolic links in the local disk mode. - Update
scripts/build-release.sh, add linux arm64 and macOS arm64 releases. - Update release scripts, get last git commit from
HEAD. - Remove the
CBoolstructure and code refactoring. - Remove the unused global variables.
- Add docker test and release test workflows to GitHub Actions.
- Add govulncheck workflow.
- Replace
minio.statDirEntryandsftp.statDirEntrywithfs.FileInfoToDirEntry. - Replace the global log with local log.
- Refactor the
build-release.shandbuild-docker.shscripts to make it more generic. - Update
install-minio.shscript, use-qflag for wget command to avoid print progress logs. - Rename function
NewDecryptReadertonewDecryptReader. - Update dependency, github.com/quic-go/quic-go v0.38.0 => v0.39.0.
- Update dependency, github.com/minio/minio-go/v7 v7.0.62 => v7.0.63.
- Update dependency, github.com/no-src/log v0.3.0 => v0.3.1.
- Update dependency, golang.org/x/oauth2 v0.11.0 => v0.12.0.
- Update dependency, google.golang.org/grpc v1.57.0 => v1.58.2.
v0.7.2
Fixed
- Fix some special characters may break the file path.
Enhancements
- Add some integration tests for
SFTP. - Support synchronizing symbolic link itself.
- Implement read link info in the file query api.
- Add
go1.21support. - Remove
go1.19support. - Add the
symlinkaction. - Add the
LinkTofield for theFileInfostructure. - Add the
fs.IsSymlinkfunction. - Add
Symlink,LstatandReadLinkfunctions for theDriverinterface. - Update README docs, replace the bat with bash to recognize the
Run in Terminalshortcut button. - Update README docs, add the
Web UIsection. - Update dependency, github.com/quic-go/quic-go v0.36.0 => v0.38.0.
- Update dependency, github.com/minio/minio-go/v7 v7.0.58 => v7.0.62.
- Update dependency, google.golang.org/grpc v1.56.0 => v1.57.0.
- Update dependency, github.com/no-src/log v0.2.3 => v0.3.0.
- Update dependency, golang.org/x/oauth2 v0.9.0 => v0.11.0.
- Update dependency, github.com/pkg/sftp v1.13.5 => v1.13.6.
- Update dependency, github.com/no-src/fsctl v0.1.1 => v0.1.2.
- Update dependency, golang.org/x/crypto v0.10.0 => v0.11.0.
v0.7.1
Fixed
- Fix the example in the relay docs.
- Fix stops the grpc client causing panic.
- Fix the test case for synchronizing files to server scene.
Enhancements
- Add the
dry_runflag to support the gofs is started without actual sync operations in dry run mode. - Add some MinIO integration tests.
- Update the description of the gofs program.
- Return the db field of type int in the
parseRedisConnectionfunction. - Add some save functions for the
Loaderinterface. - Update the build scripts, switch to branch main before building.
- Update dependency, github.com/gin-gonic/gin v1.9.0 => v1.9.1.
- Update dependency, github.com/quic-go/quic-go v0.34.0 => v0.36.0.
- Update dependency, github.com/minio/minio-go/v7 v7.0.55 => v7.0.58.
- Update dependency, google.golang.org/grpc v1.55.0 => v1.56.0.
- Update dependency, github.com/no-src/log v0.1.10 => v0.2.3.
- Update dependency, github.com/no-src/nscache v0.1.0 => v0.1.1.
- Update dependency, golang.org/x/oauth2 v0.8.0 => v0.9.0.
- Update dependency, google.golang.org/protobuf v1.30.0 => v1.31.0.
v0.7.0
Fixed
- Fix data race error in the
grpcServer. - Remove the redundant permission field in the client side.
- Fix invalid assign causes panic.
Enhancements
- Add the task api to support distributing tasks.
- Release the resource that is used by the sync component when close the monitor.
- Add the
task_client_max_workerflag to limit the max concurrent workers in the task client side. - Add support
boltdbloader. - Add the
conf.ToStringfunction and tests. - Move the
parseFlagsfunction to independentflagpackage. - Add some integration tests of the task mode.
- Replace the text diagrams with
mermaidsequence diagrams. - Update README docs, add the
Task Modesection. - Update README docs, introduce how to enable the HTTP3 protocol.
- Update dependency, github.com/minio/minio-go/v7 v7.0.52 => v7.0.55.
- Update dependency, golang.org/x/crypto v0.8.0 => v0.9.0.
- Update dependency, golang.org/x/oauth2 v0.7.0 => v0.8.0.
- Update dependency, google.golang.org/grpc v1.54.0 => v1.55.0.
v0.6.2
Fixed
- Ignore gocyclo check for the
testEncryptfunction.
Enhancements
- Replace the custom protocol that is based on tcp with gRPC.
- Add some integration tests that synchronize files to server.
- The
signal.Notifyfunction support stop receiving signals. - Remove the global logger in the
Daemonstructure. - Modify the
conf.Parsefunction to generics. - Add the
conf.ParseContentfunction. - Use the
bytes.TrimSuffixfunction to simplified code. - Remove
syscall.SIGKILL. - Update README docs, add the rate limit section.
- Update dependency, github.com/minio/minio-go/v7 v7.0.50 => v7.0.52.
- Update dependency, github.com/quic-go/quic-go v0.33.0 => v0.34.0.
- Update dependency, golang.org/x/crypto v0.7.0 => v0.8.0.
v0.6.1
Fixed
- Update deviation to 8 in the rate tests.
Enhancements
- Add the
-max_tran_rateflag to support limit the max transmission rate in the server and client sides. - Add the
core.FlagSetstructure and avoid using the globalflag.CommandLine. - Remove the global variables in the
hashutil,server,httputil,ignore,daemon,confandreportpackages. - Add the
Config.ToArgsfunction and avoid using the global memberos.Argsin thedaemon.Daemon. - Move the fsctl to a new standalone project => https://github.com/no-src/fsctl.
- Update base image in the Dockerfile,
alpine:3.15.4=>alpine:latest. - Move the
versionandaboutpackages to theinternalpackage. - Move the
resource.goto theserverpackage. - Add the
yamlutilpackage. - Add scripts/clear-release.sh script to clear the files that are produced by release.
- Update scripts/build-release.sh script, support to release macOS software.
- Update dependency, github.com/minio/minio-go/v7 v7.0.48 => v7.0.50.
- Update dependency, github.com/schollz/progressbar/v3 v3.12.2 => v3.13.1.
- Update dependency, golang.org/x/crypto v0.6.0 => v0.7.0.
v0.6.0
Fixed
- Update README-CN doc, retrieve the missing example in the
SFTP Pull Clientsection. - Fix the member
Erris nil in theos.SyscallError.
Enhancements
- Changes the encryption algorithm to AES.
- Add the
-http3flag to support HTTP3 server and client. - Add the
printcommand and some tests. - Add the
includecommand and some tests, support to include other config files in the command config file. - Code refactoring for the
syncpackage, move some functions to thehashutilpackage and add some tests. - The
WaitDonesupports calling theWaitfunction many times. - Use the
runtimepackage to get information about the version of Go being used and then remove theversion/go_versionfile and related scripts and codes. - Implement the
CBoolbyatomic.Bool. - Changes the driver name of minio to lower-case and print the driver name in the log.
- Add some unit tests and benchmark tests for the
clistandtoplistpackages. - Code refactoring, replace the
Mutexin theCListstructure with theRWMutex. - Add more tests for the
encryptpackage. - Remove
go1.18support and add supportgo1.20. - Add support for
macOS. - Update build-docker.sh script, support to build the image with a specified tag that provided by the user.
- Update .gitignore, add
go.workand.run/rules. - Add govulncheck.sh script.
- Update README docs, add some flow diagrams.
- Create CODE_OF_CONDUCT.md.
- Update dependency, github.com/minio/minio-go/v7 v7.0.46 => v7.0.48.
- Update dependency, golang.org/x/net v0.4.0 => v0.7.0.
- Update dependency, github.com/no-src/log v0.1.9 => v0.1.10.
- Update dependency, github.com/quic-go/quic-go v0.32.0 => v0.33.0.
- Update dependency, github.com/gin-gonic/gin v1.8.2 => v1.9.0.
v0.5.2
Enhancements
- Add the
fsctltool. - Remove the
session_modeflag, use thesession_connectionflag to recognize the session mode. - Mask the encrypt secret and decrypt secret of report api.
- Add the
hostnamefield for report api. - The
PrintVersionfunction supports specifying the program name. - Code refactoring, register all commands to the global variable and add the
Namefunction to display the command name. - Initialize the
writeMapwith a specified size. - Update dependency, github.com/gin-gonic/gin v1.8.1 => v1.8.2.
- Update dependency, github.com/minio/minio-go/v7 v7.0.44 => v7.0.46.
- Update the build badge(#67).