falkorlib 0.8.10 → 0.9.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +60 -117
- data/README.md +46 -10
- data/binscripts/bootstrap.sh +8 -10
- data/completion/_falkor +16 -1
- data/falkorlib.gemspec +14 -14
- data/lib/falkorlib/bootstrap/base.rb +37 -32
- data/lib/falkorlib/bootstrap/git.rb +19 -4
- data/lib/falkorlib/bootstrap/latex.rb +7 -2
- data/lib/falkorlib/bootstrap/vagrant.rb +17 -10
- data/lib/falkorlib/cli.rb +16 -1
- data/lib/falkorlib/common.rb +3 -3
- data/lib/falkorlib/config.rb +3 -3
- data/lib/falkorlib/gem_tasks.rb +1 -1
- data/lib/falkorlib/git_tasks.rb +1 -1
- data/lib/falkorlib/puppet_tasks.rb +1 -1
- data/lib/falkorlib/version.rb +2 -1
- data/spec/falkorlib/bootstrap_latex_spec.rb +6 -5
- data/spec/falkorlib/bootstrap_spec.rb +45 -1
- data/spec/falkorlib/git_spec.rb +2 -2
- data/spec/falkorlib/gitflow_spec.rb +5 -4
- data/templates/gitignore/All.gitignore +2 -0
- data/templates/gitignore/Python.gitignore +162 -0
- data/templates/gitignore/TeX.gitignore +309 -0
- data/templates/latex/beamer/.Makefile.local +1 -0
- data/templates/latex/beamer/_content.md.erb +1 -1
- data/templates/latex/beamer/main.tex.erb +20 -8
- data/templates/latex/images/logo_ANSSI.png +0 -0
- data/templates/latex/images/logo_RF.png +0 -0
- data/templates/motd/motd.erb +2 -2
- data/templates/vagrant/.gitignore +14 -0
- data/templates/vagrant/Vagrantfile.erb +53 -15
- data/templates/vagrant/vagrant/config.yaml.sample +9 -6
- data/templates/vagrant/vagrant/scripts/bootstrap.sh +32 -14
- metadata +86 -79
- data/templates/latex/images/logo_UL.pdf +0 -0
- data/templates/latex/images/logo_ULHPC.pdf +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
################################################################################
|
3
|
-
# Time-stamp: <
|
3
|
+
# Time-stamp: <Sat 2024-08-31 16:34 svarrette>
|
4
4
|
################################################################################
|
5
5
|
# Interface for the main Bootstrapping operations
|
6
6
|
#
|
@@ -215,11 +215,26 @@ module FalkorLib
|
|
215
215
|
run %( git crypt add-gpg-user #{k} )
|
216
216
|
end
|
217
217
|
end
|
218
|
+
end # gitcrypt
|
218
219
|
|
220
|
+
###### gitignore ######
|
221
|
+
# Initialize .gitignore in the [current] directory
|
222
|
+
def gitignore(dir = Dir.pwd, options = {})
|
223
|
+
path = normalized_path(dir)
|
224
|
+
unless File.directory?(path)
|
225
|
+
warning "The directory '#{path}' does not exist yet."
|
226
|
+
warning 'Do you want to create (and git init) this directory?'
|
227
|
+
really_continue?
|
228
|
+
run %(mkdir -p #{path})
|
229
|
+
end
|
230
|
+
templatedir = File.join( FalkorLib.templates, 'gitignore')
|
231
|
+
src_gitignore = 'All.gitignore' # Default without any option
|
232
|
+
src_gitignore = 'TeX.gitignore' if options[:latex]
|
233
|
+
src_gitignore = 'Python.gitignore' if options[:python]
|
234
|
+
src_gitignore = 'All.gitignore' if options[:all]
|
235
|
+
run %(cp #{templatedir}/#{src_gitignore} #{path}/.gitignore)
|
236
|
+
end # gitignore
|
219
237
|
|
220
238
|
|
221
|
-
|
222
|
-
end # gitcrypt
|
223
|
-
|
224
239
|
end # module Bootstrap
|
225
240
|
end # module FalkorLib
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
################################################################################
|
3
|
-
# Time-stamp: <
|
3
|
+
# Time-stamp: <Thu 2023-11-23 18:13 svarrette>
|
4
4
|
################################################################################
|
5
5
|
# Interface for the main Bootstrapping operations
|
6
6
|
#
|
@@ -100,12 +100,17 @@ module FalkorLib
|
|
100
100
|
info "populating '#{src_project_dir}'"
|
101
101
|
#FalkorLib::Bootstrap::Link.root(srcdir, { :verbose => true} )
|
102
102
|
FalkorLib::Bootstrap::Link.makefile(srcdir, :no_interaction => true)
|
103
|
-
[ '_style.sty'
|
103
|
+
[ '_style.sty' ].each do |f|
|
104
104
|
Dir.chdir( srcdir ) do
|
105
105
|
dst = ".makefile.d/latex/#{f}"
|
106
106
|
run %( ln -s #{dst} #{f} ) unless File.exist?( File.join(srcdir, f) )
|
107
107
|
end
|
108
108
|
end
|
109
|
+
[ '.gitignore' ].each do |f| # .gitignore no longer accepted as symlink
|
110
|
+
Dir.chdir( srcdir ) do
|
111
|
+
run %( cp .makefile.d/latex/#{f} #{f} ) unless File.exist?( File.join(srcdir, f) )
|
112
|
+
end
|
113
|
+
end
|
109
114
|
if type == :beamer
|
110
115
|
f = 'beamerthemeFalkor.sty'
|
111
116
|
dst = "#{FalkorLib.config[:git][:submodulesdir]}/beamerthemeFalkor/#{f}"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
################################################################################
|
3
|
-
# Time-stamp: <Mon
|
3
|
+
# Time-stamp: <Mon 2023-12-04 16:37 svarrette>
|
4
4
|
################################################################################
|
5
5
|
# Interface for Bootstrapping MkDocs
|
6
6
|
#
|
@@ -39,9 +39,23 @@ module FalkorLib
|
|
39
39
|
"Select OS to configure within your vagrant boxes by default",
|
40
40
|
(config[:boxes].keys.find_index(config[:os]) + 1))
|
41
41
|
end
|
42
|
+
# Eventually adapt default provider and IP range
|
43
|
+
providers = ['virtualbox', 'libvirt']
|
44
|
+
default_provider = (config[:os] =~ /_uefi$/) ? 'libvirt': 'virtualbox'
|
45
|
+
info "OS selected: #{config[:os]} (thus with default provider: #{default_provider})"
|
46
|
+
config[:provider] = select_from(providers,
|
47
|
+
"Confirm vagrant hypervisor provider:",
|
48
|
+
providers.find_index(default_provider)+1)
|
49
|
+
config[:range] = case config[:provider]
|
50
|
+
when 'libvirt'
|
51
|
+
'192.168.122.1/24'
|
52
|
+
else
|
53
|
+
'192.168.56.0/21'
|
54
|
+
end
|
42
55
|
[ :ram, :vcpus, :domain, :range ].each do |k|
|
43
56
|
config[k.to_sym] = ask("\tDefault #{k.capitalize}:", config[k.to_sym])
|
44
57
|
end
|
58
|
+
|
45
59
|
puts config.to_yaml
|
46
60
|
FalkorLib::GitFlow.start('feature', 'vagrant', rootdir) if (use_git && FalkorLib::GitFlow.init?(rootdir))
|
47
61
|
init_from_template(templatedir, rootdir, config,
|
@@ -55,15 +69,8 @@ module FalkorLib
|
|
55
69
|
[ 'bootstrap.sh'].each do |f|
|
56
70
|
FalkorLib::Git.add(File.join(scriptsdir, "#{f}")) if use_git
|
57
71
|
end
|
58
|
-
|
59
|
-
|
60
|
-
run %(git ignore '.vagrant/' ) if command?('git-ignore')
|
61
|
-
# run %(ln -s README.md index.md )
|
62
|
-
# run %(ln -s README.md contributing/index.md )
|
63
|
-
# run %(ln -s README.md setup/index.md )
|
64
|
-
end
|
65
|
-
if File.exist?(File.join(rootdir, '.gitignore'))
|
66
|
-
FalkorLib::Git.add(File.join(rootdir, '.gitignore')) if use_git
|
72
|
+
[ '.gitignore', '.ruby-version' ].each do |f|
|
73
|
+
FalkorLib::Git.add(File.join(rootdir, "#{f}")) if (use_git && File.exist?(File.join(rootdir, "#{f}")))
|
67
74
|
end
|
68
75
|
return 0
|
69
76
|
#exit_status.to_i
|
data/lib/falkorlib/cli.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
################################################################################
|
3
|
-
# Time-stamp: <
|
3
|
+
# Time-stamp: <Sat 2024-08-31 16:30 svarrette>
|
4
4
|
################################################################################
|
5
5
|
# Interface for the CLI
|
6
6
|
#
|
@@ -93,6 +93,21 @@ CONFIG_LONG_DESC
|
|
93
93
|
FalkorLib::Bootstrap.gitcrypt(path, options)
|
94
94
|
end # gitcrypt
|
95
95
|
|
96
|
+
###### gitignore ######
|
97
|
+
method_option :all, :aliases => ['--all', '-a' ], :type => :boolean, :default => true,
|
98
|
+
:desc => "Ignore all files (except .gitignore)"
|
99
|
+
method_option :latex, :aliases => ['--latex', '--tex', '-l' ], :type => :boolean, :default => false,
|
100
|
+
:desc => "Setup .gitignore for LaTeX sources"
|
101
|
+
method_option :python, :aliases => '-p', :type => :boolean, :default => false,
|
102
|
+
:desc => "Setup .gitignore for Python project"
|
103
|
+
#......................................
|
104
|
+
desc "gitignore <PATH> [options]", "Initialize .gitignore for the [current] directory (by default, ignore all files but .gitignore"
|
105
|
+
def gitignore(path = '.')
|
106
|
+
FalkorLib::Bootstrap.gitignore(path, options)
|
107
|
+
end # gitignore
|
108
|
+
|
109
|
+
|
110
|
+
|
96
111
|
###### init ######
|
97
112
|
desc "init <PATH> [options]", "Bootstrap a Git Repository"
|
98
113
|
long_desc <<-INIT_LONG_DESC
|
data/lib/falkorlib/common.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
################################################################################
|
3
|
-
# Time-stamp: <
|
3
|
+
# Time-stamp: <Thu 2023-11-23 23:06 svarrette>
|
4
4
|
################################################################################
|
5
5
|
|
6
6
|
require "falkorlib"
|
@@ -66,7 +66,7 @@ module FalkorLib #:nodoc:
|
|
66
66
|
def warning(str)
|
67
67
|
puts cyan("/!\\ WARNING: " + str)
|
68
68
|
end
|
69
|
-
alias_method :warn, :warning
|
69
|
+
# alias_method :warn, :warning # FIXME erb invokes also its own warn method
|
70
70
|
|
71
71
|
## Print an error message and abort
|
72
72
|
def error(str)
|
@@ -375,7 +375,7 @@ module FalkorLib #:nodoc:
|
|
375
375
|
next
|
376
376
|
end
|
377
377
|
#puts config.to_yaml
|
378
|
-
content += ERB.new(File.read(erb.to_s),
|
378
|
+
content += ERB.new(File.read(erb.to_s), trim_mode: '<>').result(binding)
|
379
379
|
end
|
380
380
|
# error "Unable to find the template file #{erbfile}" unless File.exists? (erbfile )
|
381
381
|
# template = File.read("#{erbfile}")
|
data/lib/falkorlib/config.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# -*- encoding: utf-8 -*-
|
2
2
|
################################################################################
|
3
|
-
# Time-stamp: <
|
3
|
+
# Time-stamp: <Tue 2023-11-21 17:21 svarrette>
|
4
4
|
################################################################################
|
5
5
|
# FalkorLib Configuration
|
6
6
|
#
|
@@ -56,8 +56,8 @@ module FalkorLib #:nodoc:
|
|
56
56
|
#:custom_cfg => '.falkorlib.yaml',
|
57
57
|
:rvm => {
|
58
58
|
# See https://www.ruby-lang.org/en/downloads/branches/ for stable branches
|
59
|
-
:rubies => [ '3.
|
60
|
-
:version => '3.1.
|
59
|
+
:rubies => [ '3.2.2', '3.1.4', '3.0.6', '2.7.8'],
|
60
|
+
:version => '3.1.4',
|
61
61
|
:versionfile => '.ruby-version',
|
62
62
|
:gemsetfile => '.ruby-gemset'
|
63
63
|
},
|
data/lib/falkorlib/gem_tasks.rb
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
tasks/gem.rb
|
data/lib/falkorlib/git_tasks.rb
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
tasks/git.rb
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
tasks/puppet.rb
|
data/lib/falkorlib/version.rb
CHANGED
@@ -19,7 +19,7 @@ module FalkorLib #:nodoc:
|
|
19
19
|
# MAJOR: Defines the major version
|
20
20
|
# MINOR: Defines the minor version
|
21
21
|
# PATCH: Defines the patch version
|
22
|
-
MAJOR, MINOR, PATCH = 0,
|
22
|
+
MAJOR, MINOR, PATCH = 0, 9, 1
|
23
23
|
|
24
24
|
module_function
|
25
25
|
|
@@ -75,3 +75,4 @@ module FalkorLib #:nodoc:
|
|
75
75
|
end
|
76
76
|
|
77
77
|
|
78
|
+
|
@@ -3,7 +3,7 @@
|
|
3
3
|
#########################################
|
4
4
|
# bootstrap_latex_spec.rb
|
5
5
|
# @author Sebastien Varrette <Sebastien.Varrette@uni.lu>
|
6
|
-
# Time-stamp: <Thu
|
6
|
+
# Time-stamp: <Thu 2023-11-23 18:18 svarrette>
|
7
7
|
#
|
8
8
|
# @description Check the Bootstrapping operations for LaTeX-based projects
|
9
9
|
#
|
@@ -92,17 +92,18 @@ describe FalkorLib::Bootstrap do
|
|
92
92
|
|
93
93
|
# check src directory
|
94
94
|
expect(Dir.exist?(srcdir)).to be true
|
95
|
-
src_latex_symlinks = [ 'Makefile', '_style.sty'
|
95
|
+
src_latex_symlinks = [ 'Makefile', '_style.sty' ]
|
96
96
|
src_latex_symlinks.each do |f|
|
97
97
|
file = File.join(srcdir, f)
|
98
98
|
expect(File.exist?(file)).to be true
|
99
99
|
expect(File.readlink(file)).to include '.makefile.d/latex'
|
100
100
|
end
|
101
101
|
|
102
|
-
src_latex_files = [ "#{name}.tex" ]
|
103
|
-
src_latex_files
|
104
|
-
src_latex_files
|
102
|
+
src_latex_files = [ "#{name}.tex", '.gitignore' ]
|
103
|
+
src_latex_files += [ '_content.md', '.Makefile.local' ] if type == :beamer
|
104
|
+
src_latex_files += [ '_abstract.tex', '_conclusion.tex', '_experiments.tex', '_introduction.tex', 'biblio.bib', '_related_works.tex' ] if type == :article
|
105
105
|
src_latex_files.each do |f|
|
106
|
+
# $stderr.puts "=> checking file: #{f}"
|
106
107
|
file = File.join(srcdir, f)
|
107
108
|
expect(File.exist?(file)).to be true
|
108
109
|
end
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#########################################
|
3
3
|
# bootstrap_spec.rb
|
4
4
|
# @author Sebastien Varrette <Sebastien.Varrette@uni.lu>
|
5
|
-
# Time-stamp: <
|
5
|
+
# Time-stamp: <Sat 2024-08-31 16:18 svarrette>
|
6
6
|
#
|
7
7
|
# @description Check the basic Bootstrapping operations
|
8
8
|
#
|
@@ -186,6 +186,50 @@ describe FalkorLib::Bootstrap do
|
|
186
186
|
expect(File).to exist( File.join(dir, f))
|
187
187
|
end
|
188
188
|
end
|
189
|
+
|
190
|
+
it "#gitignore -- git ignore population from default templates (ignore all)" do
|
191
|
+
c = FalkorLib::Bootstrap.gitignore(dir, { :no_interaction => true })
|
192
|
+
gitignore = File.join(dir, '.gitignore')
|
193
|
+
expect(File).to exist( gitignore )
|
194
|
+
# Default .gitignore should ignore itself
|
195
|
+
File.read(File.realpath( gitignore )) do |f|
|
196
|
+
f.should include "!.gitignore"
|
197
|
+
end
|
198
|
+
end
|
199
|
+
|
200
|
+
it "#gitignore -- git ignore population from LaTeX templates" do
|
201
|
+
c = FalkorLib::Bootstrap.gitignore(dir, { :latex => true, :no_interaction => true })
|
202
|
+
gitignore = File.join(dir, '.gitignore')
|
203
|
+
expect(File).to exist( gitignore )
|
204
|
+
# Default .gitignore should ignore itself
|
205
|
+
File.read(File.realpath( gitignore )) do |f|
|
206
|
+
[
|
207
|
+
"*.aux",
|
208
|
+
"*.synctex",
|
209
|
+
"/*.pdf", # ignore local PDF
|
210
|
+
].each do |pattern|
|
211
|
+
f.should include "#{pattern}"
|
212
|
+
end
|
213
|
+
end
|
214
|
+
end
|
215
|
+
|
216
|
+
it "#gitignore -- git ignore population from Python templates" do
|
217
|
+
c = FalkorLib::Bootstrap.gitignore(dir, { :python => true, :no_interaction => true })
|
218
|
+
gitignore = File.join(dir, '.gitignore')
|
219
|
+
expect(File).to exist( gitignore )
|
220
|
+
# Default .gitignore should ignore itself
|
221
|
+
File.read(File.realpath( gitignore )) do |f|
|
222
|
+
[
|
223
|
+
"__pycache__/",
|
224
|
+
"*.egg-info",
|
225
|
+
"*.nox",
|
226
|
+
].each do |pattern|
|
227
|
+
f.should include "#{pattern}"
|
228
|
+
end
|
229
|
+
end
|
230
|
+
end
|
231
|
+
|
232
|
+
|
189
233
|
end
|
190
234
|
|
191
235
|
if (ctx == :with_git and !ENV['TRAVIS_CI_RUN'])
|
data/spec/falkorlib/git_spec.rb
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
#########################################
|
3
3
|
# git_spec.rb
|
4
4
|
# @author Sebastien Varrette <Sebastien.Varrette@uni.lu>
|
5
|
-
# Time-stamp: <
|
5
|
+
# Time-stamp: <Wed 2023-11-22 17:21 svarrette>
|
6
6
|
#
|
7
7
|
# @description Check the Git operations
|
8
8
|
#
|
@@ -316,7 +316,7 @@ describe FalkorLib::Git do
|
|
316
316
|
|
317
317
|
[ :subtrees, :submodules ].each do |type|
|
318
318
|
it "#config_warn(#{type})" do
|
319
|
-
t = capture(:
|
319
|
+
t = capture(:stderr) { FalkorLib::Git.config_warn(type) }
|
320
320
|
expect(t).to include "FalkorLib.config.git"
|
321
321
|
expect(t).to include "FalkorLib.config.git.submodulesdir" if type == :submodules
|
322
322
|
end
|
@@ -2,7 +2,7 @@
|
|
2
2
|
#########################################
|
3
3
|
# gitflow_spec.rb
|
4
4
|
# @author Sebastien Varrette <Sebastien.Varrette@uni.lu>
|
5
|
-
# Time-stamp: <
|
5
|
+
# Time-stamp: <Wed 2023-11-22 09:52 svarrette>
|
6
6
|
#
|
7
7
|
# @description Check the Git Flow operations -- see https://github.com/nvie/gitflow
|
8
8
|
#
|
@@ -50,7 +50,7 @@ describe FalkorLib::GitFlow do
|
|
50
50
|
it "#branch" do
|
51
51
|
expected = {
|
52
52
|
:master => 'production',
|
53
|
-
:develop => '
|
53
|
+
:develop => 'master'
|
54
54
|
}
|
55
55
|
expected.each do |type,v|
|
56
56
|
b = FalkorLib::GitFlow.branches(type.to_sym, dir)
|
@@ -82,9 +82,10 @@ describe FalkorLib::GitFlow do
|
|
82
82
|
c = FalkorLib::GitFlow.guess_gitflow_config(dir)
|
83
83
|
{
|
84
84
|
:master => 'production',
|
85
|
-
:develop => '
|
85
|
+
:develop => 'master'
|
86
86
|
}.each do |type,v|
|
87
|
-
expect(c[:branches][type.to_sym]).to eq(v)
|
87
|
+
expect(c[:branches][type.to_sym]).to eq(v) if v.is_a? String
|
88
|
+
expect(v).to include(c[:branches][type.to_sym]) if v.is_a? Array
|
88
89
|
end
|
89
90
|
{
|
90
91
|
:feature => 'feature/',
|
@@ -0,0 +1,162 @@
|
|
1
|
+
# Byte-compiled / optimized / DLL files
|
2
|
+
__pycache__/
|
3
|
+
*.py[cod]
|
4
|
+
*$py.class
|
5
|
+
|
6
|
+
# C extensions
|
7
|
+
*.so
|
8
|
+
|
9
|
+
# Distribution / packaging
|
10
|
+
.Python
|
11
|
+
build/
|
12
|
+
develop-eggs/
|
13
|
+
dist/
|
14
|
+
downloads/
|
15
|
+
eggs/
|
16
|
+
.eggs/
|
17
|
+
lib/
|
18
|
+
lib64/
|
19
|
+
parts/
|
20
|
+
sdist/
|
21
|
+
var/
|
22
|
+
wheels/
|
23
|
+
share/python-wheels/
|
24
|
+
*.egg-info/
|
25
|
+
.installed.cfg
|
26
|
+
*.egg
|
27
|
+
MANIFEST
|
28
|
+
|
29
|
+
# PyInstaller
|
30
|
+
# Usually these files are written by a python script from a template
|
31
|
+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
|
32
|
+
*.manifest
|
33
|
+
*.spec
|
34
|
+
|
35
|
+
# Installer logs
|
36
|
+
pip-log.txt
|
37
|
+
pip-delete-this-directory.txt
|
38
|
+
|
39
|
+
# Unit test / coverage reports
|
40
|
+
htmlcov/
|
41
|
+
.tox/
|
42
|
+
.nox/
|
43
|
+
.coverage
|
44
|
+
.coverage.*
|
45
|
+
.cache
|
46
|
+
nosetests.xml
|
47
|
+
coverage.xml
|
48
|
+
*.cover
|
49
|
+
*.py,cover
|
50
|
+
.hypothesis/
|
51
|
+
.pytest_cache/
|
52
|
+
cover/
|
53
|
+
|
54
|
+
# Translations
|
55
|
+
*.mo
|
56
|
+
*.pot
|
57
|
+
|
58
|
+
# Django stuff:
|
59
|
+
*.log
|
60
|
+
local_settings.py
|
61
|
+
db.sqlite3
|
62
|
+
db.sqlite3-journal
|
63
|
+
|
64
|
+
# Flask stuff:
|
65
|
+
instance/
|
66
|
+
.webassets-cache
|
67
|
+
|
68
|
+
# Scrapy stuff:
|
69
|
+
.scrapy
|
70
|
+
|
71
|
+
# Sphinx documentation
|
72
|
+
docs/_build/
|
73
|
+
|
74
|
+
# PyBuilder
|
75
|
+
.pybuilder/
|
76
|
+
target/
|
77
|
+
|
78
|
+
# Jupyter Notebook
|
79
|
+
.ipynb_checkpoints
|
80
|
+
|
81
|
+
# IPython
|
82
|
+
profile_default/
|
83
|
+
ipython_config.py
|
84
|
+
|
85
|
+
# pyenv
|
86
|
+
# For a library or package, you might want to ignore these files since the code is
|
87
|
+
# intended to run in multiple environments; otherwise, check them in:
|
88
|
+
# .python-version
|
89
|
+
|
90
|
+
# pipenv
|
91
|
+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
|
92
|
+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
|
93
|
+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
|
94
|
+
# install all needed dependencies.
|
95
|
+
#Pipfile.lock
|
96
|
+
|
97
|
+
# poetry
|
98
|
+
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
|
99
|
+
# This is especially recommended for binary packages to ensure reproducibility, and is more
|
100
|
+
# commonly ignored for libraries.
|
101
|
+
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
|
102
|
+
#poetry.lock
|
103
|
+
|
104
|
+
# pdm
|
105
|
+
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
|
106
|
+
#pdm.lock
|
107
|
+
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
|
108
|
+
# in version control.
|
109
|
+
# https://pdm.fming.dev/latest/usage/project/#working-with-version-control
|
110
|
+
.pdm.toml
|
111
|
+
.pdm-python
|
112
|
+
.pdm-build/
|
113
|
+
|
114
|
+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
|
115
|
+
__pypackages__/
|
116
|
+
|
117
|
+
# Celery stuff
|
118
|
+
celerybeat-schedule
|
119
|
+
celerybeat.pid
|
120
|
+
|
121
|
+
# SageMath parsed files
|
122
|
+
*.sage.py
|
123
|
+
|
124
|
+
# Environments
|
125
|
+
.env
|
126
|
+
.venv
|
127
|
+
env/
|
128
|
+
venv/
|
129
|
+
ENV/
|
130
|
+
env.bak/
|
131
|
+
venv.bak/
|
132
|
+
|
133
|
+
# Spyder project settings
|
134
|
+
.spyderproject
|
135
|
+
.spyproject
|
136
|
+
|
137
|
+
# Rope project settings
|
138
|
+
.ropeproject
|
139
|
+
|
140
|
+
# mkdocs documentation
|
141
|
+
/site
|
142
|
+
|
143
|
+
# mypy
|
144
|
+
.mypy_cache/
|
145
|
+
.dmypy.json
|
146
|
+
dmypy.json
|
147
|
+
|
148
|
+
# Pyre type checker
|
149
|
+
.pyre/
|
150
|
+
|
151
|
+
# pytype static type analyzer
|
152
|
+
.pytype/
|
153
|
+
|
154
|
+
# Cython debug symbols
|
155
|
+
cython_debug/
|
156
|
+
|
157
|
+
# PyCharm
|
158
|
+
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
|
159
|
+
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
|
160
|
+
# and can be added to the global gitignore or merged into this file. For a more nuclear
|
161
|
+
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
|
162
|
+
#.idea/
|