Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sourcery refactored devel branch #1

Open
wants to merge 517 commits into
base: devel
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
517 commits
Select commit Hold shift + click to select a range
1f3d95c
moving more logs to trace
myleshorton Jun 3, 2016
a6a9800
Merge branch 'whitelistchained' of github.com:getlantern/lantern into…
oxtoacart Jun 3, 2016
e1c0c89
Turned more stuff down to TRACE logging
oxtoacart Jun 3, 2016
5a47173
Merge pull request #4502 from getlantern/whitelistchained
myleshorton Jun 3, 2016
b853610
Merge commit '1a3f8f9027a1d3aae38506765a1a61de8dac5328' into ops
oxtoacart Jun 4, 2016
f71e240
Pointing at latest http-proxy-lantern
oxtoacart Jun 4, 2016
0111f43
Merge commit '9527464257cc2346b89a4d308f412ad042520086' into ops
oxtoacart Jun 4, 2016
3262dac
Updated to new ops API
oxtoacart Jun 4, 2016
a2b7a2a
Merged from devel
oxtoacart Jun 4, 2016
f47a879
Merge commit '89a58f60ce6308b942262cc207da66bd91581fc1' into ops
oxtoacart Jun 4, 2016
c5b02a4
Moved fdcount to beginning of tests
oxtoacart Jun 4, 2016
fcf41ff
Removed bad fallback from default config
oxtoacart Jun 4, 2016
1eecf18
Merge pull request #4520 from getlantern/issue-4519
myleshorton Jun 4, 2016
a1f5c14
Merge branch 'devel' into ops
oxtoacart Jun 4, 2016
f7ddb21
fix dialDirect for issue 4500
Jun 4, 2016
9411e24
Removed borda
oxtoacart Jun 5, 2016
1f9f57f
Merge commit '22beae154f0be399d10fafdd5fc3cd064205e929' as 'src/githu…
oxtoacart Jun 5, 2016
963ca00
Added borda client to testpackages
oxtoacart Jun 5, 2016
7071b32
Added TLS ClientSessionCache in a few places to reduce TLS handshaking
oxtoacart Jun 5, 2016
5a09690
When no check function provided for dialer, return true
oxtoacart Jun 5, 2016
704332c
Changed timing on fdcount test to reduce spurious failures
oxtoacart Jun 5, 2016
1a5246d
Merge pull request #4525 from getlantern/tlscaching
myleshorton Jun 5, 2016
2415df8
Merge pull request #4524 from getlantern/chained-test-default
fffw Jun 5, 2016
48779de
Merge pull request #4521 from getlantern/issue-4500
fffw Jun 5, 2016
ef5da72
more reliable balancer check test
fffw Jun 6, 2016
b24d120
Merge pull request #4380 from getlantern/issue4268-fix
oxtoacart Jun 6, 2016
7496cf3
Not using DeviceID if it's not 6 bytes in length
oxtoacart Jun 7, 2016
08156b2
Merge commit '9b6d87c6e2f49cef6fa0a72544e9dcf3a3610ce5' into ops
oxtoacart Jun 7, 2016
ade58bc
Updated errors package, added some test packages
oxtoacart Jun 7, 2016
7655dea
Reenabled obfs4 test
oxtoacart Jun 7, 2016
ef4532e
Merge commit 'f5d74fc90217cbd702f8af641613ea72d74c5950' into ops
oxtoacart Jun 7, 2016
0877b85
Merge commit 'f368bbef9ecc713eaf8a8bbd34a722f714d8a59f' into ops
oxtoacart Jun 7, 2016
7ac6b8f
Updated to latest http-proxy
oxtoacart Jun 7, 2016
4efbac0
Merge commit '58e99cba9b02645fda70f451aabe110d99c12123' into ops
oxtoacart Jun 7, 2016
3b51b34
Grabbed latest http-proxy-lantern
oxtoacart Jun 7, 2016
02016fe
Removed getlantern/testify
oxtoacart Jun 7, 2016
f5ce9ea
Added more test packages
oxtoacart Jun 7, 2016
1c8d922
Added more test packages
oxtoacart Jun 7, 2016
cd18b40
Removed iniflags
oxtoacart Jun 7, 2016
b3e4749
Merged from devel
oxtoacart Jun 7, 2016
cb02d47
Merge commit 'deffe848a2cb80bb3a20223ebc84e68c6cb051e5' into ops
oxtoacart Jun 7, 2016
7ea9834
Merge commit '841d61d2c5d2293ec97cd720efbdae9cc1baeb69' into ops
oxtoacart Jun 7, 2016
9f288a6
Merge commit '22d407b032da88fed97872db947c4e1a4a375623' into ops
oxtoacart Jun 7, 2016
2cd4216
Resting right http-proxy package
oxtoacart Jun 7, 2016
87662a3
Using new golog.Errorf capability
oxtoacart Jun 7, 2016
7f8feec
Merge commit 'da01ba54094ed42a0e2ef2b6c513a2bb09a0a8d9' into ops
oxtoacart Jun 7, 2016
a85c97f
Merge commit '841333b91a8f99dce35a0ba684514a0106dc0959' into ops
oxtoacart Jun 7, 2016
ac9b073
Removed unnecessary test packages
oxtoacart Jun 7, 2016
3ca77ec
Merge commit 'b8fd45632ecf060fcb5199dabaac22d197987cbc' into ops
oxtoacart Jun 7, 2016
f32e1d0
Merge pull request #4363 from getlantern/ops
fffw Jun 8, 2016
6ad15e1
Merge commit 'c1e11d8473733fc2df37f1db184abf84f9f259b2' into connleak
oxtoacart Jun 8, 2016
805a50f
Removed old idletiming
oxtoacart Jun 8, 2016
dc132f5
Merge commit '7a9f4f5f4354c7f5e34a347a094c835914a32dd0' as 'src/githu…
oxtoacart Jun 8, 2016
6b70360
Fixed connection leak, using new idletiming API
oxtoacart Jun 8, 2016
43b2fb7
Added note about needing custom fork of go
oxtoacart Jun 8, 2016
356c7b5
Merge commit 'fa087136f5e4f8e7e42c43b6d3fb82359df959e3' into connleak
oxtoacart Jun 8, 2016
f7221b0
Merge pull request #4593 from getlantern/connleak
myleshorton Jun 8, 2016
411e622
Using custom Go in docker
oxtoacart Jun 9, 2016
ae0ef39
Sped up test target
oxtoacart Jun 9, 2016
5c2f9f0
Being smarter about rebuilding lantern
oxtoacart Jun 9, 2016
db40efe
Fully respect the stickyconfig flag
oxtoacart Jun 9, 2016
54b0269
Fixed fetcher_test
oxtoacart Jun 9, 2016
7de0afb
Merge commit '2e3b189e47f8f37fb910a171ad0de83c5dfd7a5e' into devel
oxtoacart Jun 9, 2016
2a26298
Merge pull request #4608 from getlantern/respectsticky
myleshorton Jun 9, 2016
f294615
Merge pull request #4600 from getlantern/fasttest
myleshorton Jun 9, 2016
95b0c36
Merge branch 'devel' of https://github.com/getlantern/lantern into devel
oxtoacart Jun 9, 2016
597dd67
Cleaned up logging of errors in pipeData
oxtoacart Jun 9, 2016
109042c
Fixed Makefile SOURCES for Mac
oxtoacart Jun 9, 2016
7f56045
Upgraded to latest gomobile
oxtoacart Jun 9, 2016
2eff257
Starting to use new netx package
oxtoacart Jun 10, 2016
0d1d7af
Refactored protected
oxtoacart Jun 10, 2016
62cedd3
Moved lantern-mobile back to its original spot
oxtoacart Jun 10, 2016
9ab47f4
Removed unneeded constant
oxtoacart Jun 10, 2016
3193d87
Fixed comment on Dial
oxtoacart Jun 10, 2016
79e3062
Ignoring EOF on reading from remote end while piping
oxtoacart Jun 12, 2016
a20a384
Changed origin to addr
oxtoacart Jun 12, 2016
036a1bb
Removed unused tlsdialer.DialWithDialer method
oxtoacart Jun 12, 2016
e9defbd
Merge pull request #4613 from getlantern/issue4554
Jun 12, 2016
f4a7375
Using interruptible bidirectional copying to keep idle connections fr…
oxtoacart Jun 15, 2016
b3f175a
Added hack to get lantern_test to pass
oxtoacart Jun 15, 2016
9150b96
Removed hack to get lantern_test to pass
oxtoacart Jun 15, 2016
7bdd91e
Fixed baked-in fallbacks
oxtoacart Jun 16, 2016
bf3bb4b
Merge pull request #4712 from getlantern/fixbakedin
oxtoacart Jun 16, 2016
c0d1e66
Merge branch 'devel' into issue4686
oxtoacart Jun 16, 2016
1e29bc1
Making netx test use ipv4
oxtoacart Jun 16, 2016
399037e
avoid panic when error hitting /startup fix #4633
fffw Jun 11, 2016
8b1022e
Merge pull request #4634 from getlantern/issue4633
fffw Jun 17, 2016
551bba5
Debugging netx
oxtoacart Jun 17, 2016
151ff4e
Fixed netx test failure on Linux
oxtoacart Jun 17, 2016
532a016
Running all tests again
oxtoacart Jun 17, 2016
5ca3b9d
netx.BidiCopy back to propagating original net errors
oxtoacart Jun 17, 2016
a250375
Addressed code review comments
oxtoacart Jun 17, 2016
f190aa4
handler now specifies write timeout to BidiCopy
oxtoacart Jun 17, 2016
acc2afe
BidiCopy test passing on Linux
oxtoacart Jun 17, 2016
160070f
Removed netx
oxtoacart Jun 20, 2016
f9de69c
Merge commit 'd02c77f506a4953e015f012634d6cc759cdc4ee9' as 'src/githu…
oxtoacart Jun 20, 2016
5964736
Fixed race condition in detour
oxtoacart Jun 20, 2016
f6f203b
Merge pull request #4707 from getlantern/issue4686
fffw Jun 21, 2016
11aa02b
updated bootstrap servers and masquerades
myleshorton Jun 23, 2016
ed76b30
Just added more details on the commit process.
myleshorton Jun 23, 2016
721e820
More notes on verifying the process.
myleshorton Jun 23, 2016
a8a3b4b
Update README.md
myleshorton Jun 23, 2016
0871d35
added git add of resources
myleshorton Jun 23, 2016
58a495a
Merge branch 'devel' of github.com:getlantern/lantern into devel
myleshorton Jun 23, 2016
6fafed1
balancer reset dialers right after new config is fetched
fffw Jun 24, 2016
02f2ac1
add test to cover resetting a balancer
fffw Jun 24, 2016
9580206
Add support for simulating autoupdates locally.
xiam Jun 29, 2016
d539fe3
Updating links
myleshorton Jul 1, 2016
34435b0
3.0.1
myleshorton Jul 1, 2016
0dda867
Update README.md
myleshorton Jul 1, 2016
7327113
Merge pull request #4848 from getlantern/feature/mock-autoupdates
myleshorton Jul 1, 2016
cf23ca3
Update README.md
myleshorton Jul 3, 2016
13f8a8b
updating to 3.0.4
myleshorton Jul 4, 2016
467cffd
extract method balancer.pickDialer
fffw Jul 5, 2016
e4e1d02
Merge pull request #4781 from getlantern/issue4705
oxtoacart Jul 5, 2016
0ff9507
Enabled borda reporting every 5 minutes for 1% of clients
oxtoacart Jul 6, 2016
f201d87
Merge pull request #4925 from getlantern/enableborda
fffw Jul 6, 2016
3e8adea
3.0.5
myleshorton Jul 6, 2016
79a537b
Update README.md
myleshorton Jul 6, 2016
40c1734
Increasing nofiles limit on UNIX systems
oxtoacart Jul 7, 2016
b45cc69
Merge pull request #4938 from getlantern/issue4928
myleshorton Jul 8, 2016
40344a2
Update README.md
myleshorton Jul 8, 2016
eefef40
3.0.6 link is 404
Jul 8, 2016
aafcbb9
Update README.md
myleshorton Jul 8, 2016
5f5f839
Just removing go 1.6 since we have the custom go build.
myleshorton Jul 11, 2016
d69f472
update to 3.0.7
myleshorton Jul 14, 2016
69d591a
lots of changes to fetch per-user proxies separately form global config
myleshorton Jul 21, 2016
3689a60
align balancer.lastDialTime in 64bit boundary
fffw Jul 6, 2016
bbabb70
linter
myleshorton Jul 21, 2016
d54d038
lots of changes to use a new config class for fetching, saving, etc w…
myleshorton Jul 21, 2016
d23fdbb
Fixed generic byte data
myleshorton Jul 21, 2016
1df1550
Merge pull request #5064 from getlantern/64bit-alignment
fffw Jul 22, 2016
c94b095
cleanups
myleshorton Jul 22, 2016
b03a168
Lots of changes to completely remove old config.go
myleshorton Jul 22, 2016
1f0f9a5
adding generating global config, removing yaml conf
myleshorton Jul 22, 2016
b63c2f5
more naming cleanups
myleshorton Jul 22, 2016
35d3a2b
fixed poll interval
myleshorton Jul 22, 2016
fc94184
added duration params
myleshorton Jul 22, 2016
5350f8d
fixed name
myleshorton Jul 22, 2016
a38a28b
lots of fixes to get the integration test working
myleshorton Jul 22, 2016
669a720
more naming fixes
myleshorton Jul 22, 2016
c3b1830
Added specific CA cert for auto-updates
myleshorton Jul 22, 2016
5db4055
Added comments and removed dead fields
myleshorton Jul 22, 2016
6a11475
removed yamlconf
myleshorton Jul 22, 2016
67cf93c
not used
myleshorton Jul 22, 2016
e740e6d
simplified this process a whole lot
myleshorton Jul 22, 2016
b83893f
moved boilerplate into config package
myleshorton Jul 23, 2016
76da387
cleaned up dispatch a little bit
myleshorton Jul 23, 2016
a958d0d
logging and global conf tweak
myleshorton Jul 23, 2016
a054b93
balancer don't retry same dialer if it was failed
fffw Jul 25, 2016
cec2b12
make it easier to spot issue from user logs
fffw Jul 25, 2016
65718b3
more cleanups and get global config from new location
myleshorton Jul 25, 2016
fe8103c
test cleanup
myleshorton Jul 26, 2016
5b9eaa2
fixed empty url check
myleshorton Jul 26, 2016
783ae3b
more simplifications
myleshorton Jul 26, 2016
e211908
Fixed names
myleshorton Jul 26, 2016
25ae0eb
Fixed incorrect logic for when we're not configured for proxying
myleshorton Jul 26, 2016
22640df
remove incorrect log
myleshorton Jul 26, 2016
3581a40
cleaned up locking
myleshorton Jul 26, 2016
cf04887
simpler flag processing
myleshorton Jul 26, 2016
028b9d2
Added loggly-sample-percentage command-line flag which defaults to sa…
oxtoacart Jul 26, 2016
aaf3673
tweaks to get tests working
myleshorton Jul 26, 2016
03726f8
Added message when we do report to Loggly
oxtoacart Jul 26, 2016
b19f95b
comments
myleshorton Jul 26, 2016
ca70822
change to use specific options
myleshorton Jul 26, 2016
041efe9
Merge pull request #5084 from getlantern/issue-5075
myleshorton Jul 27, 2016
b547fbd
fixed logs
myleshorton Jul 27, 2016
a1fca48
moved init stuff to config package
myleshorton Jul 27, 2016
813ab3c
made stuff more package private
myleshorton Jul 27, 2016
6c815a8
removed unnecessary go routine
myleshorton Jul 27, 2016
29b9bcf
removed log and fixed race in test
myleshorton Jul 28, 2016
a8968b8
attempt to fix race issues
myleshorton Jul 28, 2016
f326eee
actual fix for race issues
myleshorton Jul 28, 2016
4a8f264
put generated go file in generated folder
fffw Jul 28, 2016
fb5bac8
use correct template to generate config
fffw Jul 28, 2016
a2021e4
Merge branch 'devel' into issue5089
oxtoacart Jul 28, 2016
ab9cb07
Fixed deduplication for Loggly
oxtoacart Jul 28, 2016
f6ed999
Bumped up loggly sampling percentage
oxtoacart Jul 28, 2016
2b94cad
Added test for rate limiting
oxtoacart Jul 28, 2016
13b2d14
Added unit test for includeInSample
oxtoacart Jul 29, 2016
f75c884
Merge branch 'issue5089' into issue5096
oxtoacart Jul 29, 2016
4074691
Only configuring logging once
oxtoacart Jul 29, 2016
9154a52
Updated sampling algorithm back to original
oxtoacart Jul 29, 2016
4cf6126
Merge branch 'issue5089' into issue5096
oxtoacart Jul 29, 2016
56a4d36
Merge pull request #5099 from getlantern/issue5096
myleshorton Jul 30, 2016
6905970
Merge pull request #5090 from getlantern/issue5089
myleshorton Jul 30, 2016
bd822d7
updated during testing
myleshorton Aug 3, 2016
49ef327
Merge pull request #5097 from getlantern/issue-3567-generated
myleshorton Aug 3, 2016
cb9e104
reverse-merging from master
myleshorton Aug 3, 2016
76ef309
added back flag override support
myleshorton Aug 3, 2016
c2af99c
applyFlags return no error
fffw Aug 4, 2016
b91b7be
Merge pull request #5062 from getlantern/issue-3567
fffw Aug 4, 2016
fec55ba
Added translation comment.
myleshorton Aug 9, 2016
856a7f6
avoid calling multiple times when printing stack
fffw Jul 1, 2016
df90c5a
remove PRINT_STACK, no longer used
fffw Jul 2, 2016
8298106
another level of indention
fffw Jul 2, 2016
c76b05e
deduplicate golog code
fffw Jul 2, 2016
ea6360c
only print stack for FATAL and ERROR
fffw Jul 2, 2016
479e161
bring back original indention
fffw Aug 16, 2016
ba43a40
add back prefix for stack trace
fffw Aug 16, 2016
d78e584
use named parameter for PrintStack
fffw Aug 16, 2016
3317291
Merge pull request #4863 from getlantern/issue4803
oxtoacart Aug 16, 2016
73e0376
removed defunct projecttalk
myleshorton Nov 2, 2016
ee7929f
Merge pull request #5396 from getlantern/cfscanner
aranhoide Nov 4, 2016
dad3d74
Update README.md
Nov 15, 2016
d7bccd8
Update README.md
Nov 15, 2016
f05b8ff
Added separate beta section
myleshorton May 17, 2017
5e2b2d0
CAPS
myleshorton May 17, 2017
89bc343
Update README.md
myleshorton May 17, 2017
ea41d98
Update README.md
May 17, 2017
9572840
Added Used By badge
oxtoacart Jun 9, 2017
a18cd45
Added cloud yaml template
oxtoacart Feb 28, 2018
cc77aba
Update cloud.yaml
atavism Mar 2, 2018
0417f1d
Update cloud.yaml
atavism Mar 3, 2018
198046e
Update cloud.yaml
atavism Mar 13, 2018
14c7e0a
Update cloud.yaml
atavism Mar 17, 2018
f6a98cf
Update README.md
Jul 25, 2018
666f9a5
Update LICENSE
Nov 26, 2018
5048e62
Updated minimum required versions in README
myleshorton Apr 23, 2019
e46cebc
Merge pull request #8342 from getlantern/myleshorton-readme
myleshorton Apr 23, 2019
5a5d83a
adding archive
myleshorton Jun 20, 2019
7d7c846
moving to archive to make room for downloads
myleshorton Jun 20, 2019
313b412
more reshuffling
myleshorton Jun 20, 2019
507644a
removing a step
myleshorton Jun 20, 2019
56849f4
Update README.md
Jun 20, 2019
50d3527
Update README.md
Jun 20, 2019
10e8c0e
Added back beta links
myleshorton Jun 21, 2019
88520bb
Update README.md
Ghostwithout Jul 15, 2019
2ea216c
Update README.md
Ghostwithout Jul 15, 2019
2076ff9
Pointing to S3 instead of GitHub
oxtoacart Nov 3, 2019
c3eecaf
Fixed Linux links
oxtoacart Nov 3, 2019
8dc05ef
Only use s3 for now.
myleshorton Nov 3, 2019
84c89de
Update README.md
myleshorton Nov 3, 2019
96852c0
Update README.md
myleshorton Nov 3, 2019
651ec9e
Update README.md
Nov 12, 2019
15bffad
Update README.md
Ghostwithout Nov 27, 2019
3f7a634
Update README.md
Ghostwithout Dec 10, 2019
bc41f49
Update README.md
Ghostwithout Jan 1, 2020
e4cd60f
Update README.md
Feb 1, 2020
77d7a40
Update README.md
joesis Feb 1, 2020
6a63824
Update README.md
Feb 1, 2020
78baee7
Add Bitbucket links
joesis Feb 3, 2020
db8f0c7
Update README.md
Feb 3, 2020
799481c
Update README.md
Feb 3, 2020
2d97be5
Update README.md
Feb 3, 2020
1180c14
Switch main download link to GitLab
joesis Feb 9, 2020
ccb3079
Merge pull request #8371 from getlantern/joesis-patch-1
joesis Feb 9, 2020
1b846b2
version and link fix
myleshorton Feb 11, 2020
d05d3a7
Update README.md
Ghostwithout Feb 17, 2020
1eb4e84
'Refactored by Sourcery'
May 12, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
299 changes: 17 additions & 282 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,296 +1,31 @@
# lantern [![Travis CI Status](https://travis-ci.org/getlantern/lantern.svg?branch=valencia)](https://travis-ci.org/getlantern/lantern) [![Coverage Status](https://coveralls.io/repos/getlantern/lantern/badge.png?branch=valencia)](https://coveralls.io/r/getlantern/lantern) [![ProjectTalk](http://www.projecttalk.io/images/gh_badge-3e578a9f437f841de7446bab9a49d103.svg?vsn=d)] (http://www.projecttalk.io/boards/getlantern%2Flantern?utm_campaign=gh-badge&utm_medium=badge&utm_source=github)
## 蓝灯(Lantern)最新版本下载 版本5.8.3 Download Lantern Version 5.8.3

**If you're looking for Lantern installers, you can find all of them at the following links:**
- [Android](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-beta.apk)
- [Windows XP SP 3 and above](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-beta.exe)
- [OSX 10.8 and above](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-beta.dmg)
- [Ubuntu 14.04 32 bit](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-beta-32-bit.deb)
- [Ubuntu 14.04 64 bit](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-beta-64-bit.deb)
- [Arch Linux](https://aur.archlinux.org/packages/lantern)
[Windows7及以上 Windows 7+](https://gitlab.com/getlantern/lantern-binaries/raw/master/lantern-installer.exe) [备用地址1 Alternative address1](https://s3.amazonaws.com/lantern/lantern-installer.exe) [备用地址2 Alternative address2](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer.exe)

**If you're looking for help, please visit below user forums:**

| [English](https://groups.google.com/forum/#!forum/lantern-users-en) | [中文](https://groups.google.com/forum/#!forum/lantern-users-zh) | [فارسی](https://groups.google.com/forum/#!forum/lantern-users-fa) | [français](https://groups.google.com/forum/#!forum/lantern-users-fr)
[安卓版(4.1+) Android(4.1+)](https://gitlab.com/getlantern/lantern-binaries/raw/master/lantern-installer.apk) [备用地址1 Alternative address1](https://s3.amazonaws.com/lantern/lantern-installer.apk) [备用地址2 Alternative address2](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer.apk) [Google Play](https://play.google.com/store/apps/details?id=org.getlantern.lantern)

## Building Lantern
[iOS版本(12.1+) iOS(12.1+)](https://apps.apple.com/app/id1457872372?l=zh_cn) [iOS版安装使用教程](https://github.com/getlantern/lantern/wiki/%E8%93%9D%E7%81%AFiOS%E5%AE%89%E8%A3%85%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B)

### Prerequisites

* [Git](https://git-scm.com/downloads) - `brew install git`, `apt-get install git`, etc
* [Go 1.6 or higher](https://golang.org/dl/).
* [GNU Make](https://www.gnu.org/software/make/)
* [Nodejs & NPM](https://nodejs.org/en/download/package-manager/)
* GNU C Library (linux only) - `apt-get install libc6-dev-i386`, etc
* [Gulp](http://gulpjs.com/) - `npm i gulp -g`
[苹果电脑版(OS X 10.11 El Capitan及以上](https://gitlab.com/getlantern/lantern-binaries/raw/master/lantern-installer.dmg) [备用地址1 Alternative address1](https://s3.amazonaws.com/lantern/lantern-installer.dmg) [备用地址2 Alternative address2](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer.dmg)

To build and run Lantern desktop, just do:

```sh
git clone https://github.com/getlantern/lantern.git
cd lantern
make lantern
./lantern
```
Ubuntu 14.04及以上 [32位系统](https://gitlab.com/getlantern/lantern-binaries/raw/master/lantern-installer-32-bit.deb) [备用地址 Alternative address](https://s3.amazonaws.com/lantern/lantern-installer-32-bit.deb) [64位系统](https://gitlab.com/getlantern/lantern-binaries/raw/master/lantern-installer-64-bit.deb) [备用地址 Alternative address](https://s3.amazonaws.com/lantern/lantern-installer-64-bit.deb)

During development, you'll likely want to do a clean build like this:
请大家收藏本页面,方便日后下载新版。
Bookmark this page to download the latest versions in the future.

```sh
make clean-desktop lantern && ./lantern
```
**使用遇到问题,请阅读[蓝灯常见问题解决办法](https://github.com/getlantern/lantern/wiki) When you have a problem when using Lantern, please refer to [FAQ](https://github.com/getlantern/lantern/wiki)**

## Building Mobile
**If you would like to give the latest but more UNSTABLE BETA versions a try, you can find all of them at the following links:** **如果希望试用最新测试版,请点击如下下载链接:**
- [Android](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-preview.apk)
- [Windows 7 and above](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-preview.exe)
- [OSX 10.10 and above](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-preview.dmg)
- [Ubuntu 14.04 32 bit](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-preview-32-bit.deb)
- [Ubuntu 14.04 64 bit](https://raw.githubusercontent.com/getlantern/lantern-binaries/master/lantern-installer-preview-64-bit.deb)

### Mobile Prerequisites
**第一次下载安装蓝灯时,请等待几分钟以便完成配置,笔芯**

Building the mobile library and app requires the following:
**Please allow some time for Lantern to complete configurations if installing it for the first-time, love <3**

1. Install Java JDK 7 or 8
2. Install Go 1.6 or higher
3. Install [Android SDK Tools](http://developer.android.com/sdk/index.html#Other)
4. Install NDK(http://developer.android.com/ndk/downloads/index.html)

Make sure to set these environment variables before trying to build any Android
components (replace the paths based on wherever you've installed the Android
SDK and NDK).

```bash
export ANDROID_HOME=/opt/adt-bundle-mac-x86_64-20130917/sdk
export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools:$PATH
export NDK_HOME=/opt/android-ndk-r10e
export PATH=$NDK_HOME:$PATH
```

### Go Android Library

The core Lantern functionality can be packaged into a native Android library
with:

```
make android-lib
```

### Java Android SDK

The Java-based Android SDK allows easy embedding of Lantern functionality in 3rd
party Android apps such as Manoto TV. The SDK can be built with:

```
make android-sdk
```

### Lantern Mobile Testbed

This simple Android application provides a way to test the Android SDK. It can
be built with:

```
make android-testbed
```

### Lantern Mobile App


## Debug

To create a debug build of the full lantern mobile app:

```
make android-debug
```

To install on the default device:

```
make android-install
```

## Release

To create a release build, add the following to your
``~/.gradle/gradle.properties`` file:

```
KEYSTORE_PWD=$KEYSTORE_PASSWORD
KEYSTORE_FILE=keystore.release.jks
KEY_PWD=$KEY_PASSWORD
```

You can find the exact values to add to your gradle.properties
[here](https://github.com/getlantern/too-many-secrets/blob/master/android/keystore).

Then it can be built with:

```sh
SECRETS_DIR=$PATH_TO_TOO_MANY_SECRETS \
VERSION=2.0.0-beta1 make android-release
```

### Android Tips
#### Android Studio
To get the build working for Android Studio, you'll want to add the following
dummy values to your ``~/.gradle/gradle.properties`` file:

```
lanternRevisionDate="April 26, 2016"
lanternVersion=2.2.1
```

#### Uninstall for All Users
If you use `adb` to install and debug an app to your Android device during
development and then subsequently build a signed APK and try to install it on
that same device, you may receive an unhelpful error saying "App Not Installed".
This typically means that you tried to install the same app but signed with a
different key. The solution is to uninstall the app first, but **you have to
uninstall it for all users**. You can do this by selecting "Uninstall for all
users" from:

```
Settings -> Apps -> [Pick the App] -> Hamburger Menu (...) -> Uninstall for all users.
```

If you forget to do this and just uninstall normally, you'll still encounter the
error. To fix this, you'll have to run the app with `adb` again and then
uninstall for all users.

#### Getting HTTP Connections to Use Proxy

In android, programmatic access to HTTP resources typically uses the
`HttpURLConnection` class. You can tell it to use a proxy by setting some
system properties:

```java
System.setProperty("http.proxyHost", host);
System.setProperty("http.proxyPort", port);
System.setProperty("https.proxyHost", host);
System.setProperty("https.proxyPort", port);
```

You can disable proxying by clearing those properties:

```java
System.clearProperty("http.proxyHost");
System.clearProperty("http.proxyPort");
System.clearProperty("https.proxyHost");
System.clearProperty("https.proxyPort");
```

However, there is one big caveat - **`HttpURLConnection` uses keep-alives to
reuse existing TCP connections**. These TCP connections will still be using the
old proxy settings. This has several implications:

**Set the proxy settings as early in the application's lifecycle as possible**,
ideally before any `HttpURLConnection`s have been opened.

**Don't expect the settings to take effect immediately** if some
`HttpURLConnection`s have already been opened.

**Disable keep-alives if you need to**, which you can do like this:

```java
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
// Need to force closing so that old connections (with old proxy settings) don't get reused.
urlConnection.setRequestProperty("Connection", "close");
```

## Building Lantern for running on a server
To run Lantern on a server, you simply need to set a flag to build it in headless mode and then tell it to run on any local address as opposed to binding to localhost (so that it's accessible from other machines). You can do this as follows:

1. ```HEADLESS=true make docker-linux``` or, if you're already running on Linux just ```HEADLESS=true make linux```
1. ```./lantern_linux_amd64 --addr 0.0.0.0:8787``` or ```./lantern_linux_386 --addr 0.0.0.0:8787```

## Other
### Generating assets

```sh
make genassets
```

If the environment variable `UPDATE_DIST=true` is set, `make genassets` also
updates the resources in the dist folder.

An annotated tag can be added like this:

```sh
git tag -a v1.0.0 -m"Tagged 1.0.0"
git push --tags
```

Use `make create-tag` as a shortcut for creating and uploading tags:

```
VERSION='2.0.0-beta5' make create-tag
```

If you want to both create a package and upload a tag, run the `create-tag` task
right after the `packages` task:

```
[...env variables...] make packages create-tag
```

### Updating Icons

The icons used for the system tray are stored in
`src/github/getlantern/lantern/icons`. To apply changes to the icons, make
your updates in the icons folder and then run `make update-icons`.

### Continuous Integration with Travis CI

Continuous builds are run on Travis CI. These builds use the `.travis.yml`
configuration. The github.com/getlantern/cf unit tests require an envvars.bash
to be populated with credentials for cloudflare. The original `envvars.bash` is
available
[here](https://github.com/getlantern/too-many-secrets/blob/master/envvars.bash).
An encrypted version is checked in as `envvars.bash.enc`, which was encrypted
per the instructions [here](https://docs.travis-ci.com/user/encrypting-files/).


## Documentation for developers

### Dev README

Please, go to [README-dev](README-dev.md) for an in-depth explanation of the Lantern internals and cloud services.

### Release README

Please visit [README-release](README-release.md) for details on building release versions of Lantern.

### Translations README

More info for dealing with translations is available in [README-translations](README-translations.md).

### Contributing changes
Lantern is a [gost](https://github.com/getlantern/gost) project that
provides repeatable builds and consolidated pull requests for lantern.

Go code in Lantern must pass several tests:

* [errcheck](https://github.com/kisielk/errcheck)
* [golint](https://github.com/golang/lint)
* Go vet
* Go test -race

You can find a generic [git-hook](https://github.com/getlantern/lantern/blob/valencia/pre-push)
file, which can be used as a pre-push (or pre-commit) hook to automatically
ensure these tests are passed before committing any code. Only Go packages in
`src/github.com/getlantern` will be tested, and only those that have changes in
them.

Install by copying it into the local `.git/hooks/` directory, with the `pre-push`
file name if you want to run it before pushing. Alternatively, you can copy
[pre-commit.hook](https://github.com/getlantern/lantern/blob/valencia/pre-commit)
to `pre-commit` to run it before each commit.

```bash
ln -s "$(pwd)/prehook.sh" .git/hooks/prehook.sh
ln -s "$(pwd)/pre-push" .git/hooks/pre-push
```

**Important notice**

If you *must* commit without running the hooks, you can run git with the
`--no-verify` flag.



[1]: https://help.github.com/articles/creating-an-access-token-for-command-line-use/
9 changes: 6 additions & 3 deletions .gitignore → archive/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@ src/github.com/getlantern/autoupdate/_test_app/main.go
src/github.com/getlantern/autoupdate/_test_app/autoupdate-binary-*
src/github.com/getlantern/autoupdate/_test_app/main
src/github.com/getlantern/flashlight/ui/resources.go
src/github.com/getlantern/flashlight/*.syso
src/github.com/getlantern/systray/sysdtray.sdf
src/github.com/getlantern/systray/Debug
src/github.com/getlantern/systray/Release
Expand All @@ -43,7 +42,7 @@ installer-resources/linux/.packaged-lantern.yaml
installer-resources/darwin/lantern_versioned.dmg.json
installer-resources/darwin/dmgbackground.png
installer-resources/darwin/dmgbackground_versioned.svg
src/github.com/getlantern/lantern-ui/dist
lantern-ui/dist
lantern.yaml
LanternMobileTestbed/app/libs/
*.apk
Expand All @@ -58,8 +57,12 @@ local.properties
.gradle
build
keystore.release.jks
src/github.com/getlantern/lantern-ui/app/js/revision.js
lantern-ui/app/js/revision.js
bns.pfx
cmd.exe
lantern-installer*
src/github.com/getlantern/rotator/test_daily.log
src/github.com/getlantern/flashlight/app/*.pem
src/github.com/getlantern/flashlight/app/lantern-9999.99.99.yaml
src/github.com/getlantern/flashlight/app/obfs4_bridgeline.txt
src/github.com/getlantern/flashlight/app/obfs4_state.json
3 changes: 3 additions & 0 deletions archive/.gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "src/github.com/getlantern/http-proxy-lantern"]
path = archive/src/github.com/getlantern/http-proxy-lantern
url = git@github.com:getlantern/http-proxy-lantern.git
File renamed without changes.
13 changes: 12 additions & 1 deletion .travis.yml → archive/.travis.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,27 @@
language: go
go:
- 1.6
node_js:
- 5.1
git:
# Handle git submodules ourselves
submodules: false
install:
- sudo apt-get install make -y
- go get golang.org/x/tools/cmd/cover
- go get -v github.com/mattn/goveralls
- curl https://s3-eu-west-1.amazonaws.com/uaalto/go1.6.2_lantern_20160503_linux_amd64.tar.gz | tar -xz -C /tmp && rm -Rf /usr/local/go && sudo mv /tmp/go /usr/local
before_script:
- npm install -g gulp-cli
script:
- openssl aes-256-cbc -K $encrypted_f217260732a9_key -iv $encrypted_f217260732a9_iv
-in envvars.bash.enc -out envvars.bash -d
- make test-and-cover
- GOROOT=/usr/local/go make test-and-cover
after_success:
- GOPATH=`pwd`:$GOPATH $HOME/gopath/bin/goveralls -coverprofile=profile.cov -service=travis-ci
before_install:
- echo -e "machine github.com\n login $CI_USER_TOKEN" >> ~/.netrc
- openssl aes-256-cbc -K $encrypted_f217260732a9_key -iv $encrypted_f217260732a9_iv
-in envvars.bash.enc -out envvars.bash -d
- sed -i 's/git@github.com:/https:\/\/github.com\//' .gitmodules
- git submodule update --init --recursive
3 changes: 1 addition & 2 deletions Dockerfile → archive/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -58,13 +58,12 @@ RUN yum -y install nodejs && yum clean packages
RUN npm install -g gulp

# Getting Go.
ENV GO_VERSION go1.6
ENV GOROOT /usr/local/go
ENV GOPATH /

ENV PATH $PATH:$GOROOT/bin

ENV GO_PACKAGE_URL https://storage.googleapis.com/golang/$GO_VERSION.linux-amd64.tar.gz
ENV GO_PACKAGE_URL https://s3-eu-west-1.amazonaws.com/uaalto/go1.6.2_lantern_20160503_linux_amd64.tar.gz
RUN curl -sSL $GO_PACKAGE_URL | tar -xvzf - -C /usr/local

# Expect the $WORKDIR volume to be mounted.
Expand Down
Loading