dploy 0.1.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,78 @@
1
+ Metadata-Version: 2.4
2
+ Name: dploy
3
+ Version: 0.1.3
4
+ Summary: Provides functionality similar to GNU Stow as a cross platform CLI tool and Python 3 module
5
+ License-Expression: MIT
6
+ License-File: LICENSE.txt
7
+ Author: Ryan Carney
8
+ Author-email: arecarn@gmail.com
9
+ Requires-Python: >=3.10
10
+ Classifier: Development Status :: 4 - Beta
11
+ Classifier: Topic :: Utilities
12
+ Project-URL: Homepage, https://github.com/arecarn/dploy
13
+ Description-Content-Type: text/markdown
14
+
15
+ # Dploy
16
+
17
+ Dploy is a tool for creating symbolic links similarly to [GNU
18
+ Stow](https://www.gnu.org/software/stow/). It is provided as a CLI tool and
19
+ Python 3.10+ module and supports Windows, Linux, and OSX.
20
+
21
+ Dploy's command `stow` creates symbolic links to the contents of source
22
+ directories or packages in a specified destination directory. Repeating the
23
+ `stow` command with the same arguments will confirm that the contents of the
24
+ package have been symbolically linked.
25
+
26
+ Dploy's command `unstow` removes symbolic links that resulted from `stow`
27
+ commands. Repeating the `unstow` command with the same arguments will confirm
28
+ that the links to stowed packages have been removed.
29
+
30
+ ## Installation
31
+
32
+ * Latest Release: `pip install dploy`
33
+ * Development Version: `pip install git+https://github.com/arecarn/dploy.git`
34
+
35
+ ## Basic CLI Usage
36
+
37
+ * `dploy stow <source-directory>... <destination-directory>`
38
+ * `dploy unstow <source-directory>... <destination-directory>`
39
+ * `dploy clean <source-directory>... <destination-directory>`
40
+ * `dploy --help`
41
+
42
+ ## Rationale
43
+
44
+ Dploy started out as simple Python script to create symbolic links to my
45
+ dotfiles for Windows, Mac, and Linux. Over time I keep improving and tweaking my
46
+ script to suit my needs, but I was running into a problem. Keeping all the
47
+ files I wanted to link in a config file was becoming a real pain in the neck.
48
+
49
+ I started looking for another solution to solve my problem, and found many
50
+ alternatives but none of them seemed to be a good fit. The solution that seemed
51
+ the most promising was using GNU Stow. It seemed like the most simple elegant
52
+ solution to the problem. The only issue was that it didn't support Windows.
53
+
54
+ Then I thought to myself, why can't I just create my own version of Stow that
55
+ work on Windows, Linux and OSX. So after that my I started morphing
56
+ simple python script into what would become Dploy and learned a lot more about
57
+ python in the process.
58
+
59
+ ## How does it compare with GNU Stow?
60
+
61
+ Below are just a few few major points of comparison between GNU stow and Dploy.
62
+
63
+ * Like GNU Stow Dploy runs in two passes. First by collecting the actions
64
+ required to complete the command and verifying that the command can
65
+ completed without any issues. If no issues are detected then the second
66
+ pass executes these actions are execute to complete the command. Otherwise
67
+ Dploy will exit and indicate why the command can not be completed. This way a
68
+ stow or unstow operation is atomic and never partially done.
69
+
70
+ * Like Stow, Dploy supports tree folding and tree unfolding.
71
+
72
+ * Unlike Stow, Dploy requires an explicit source(s) and a destination
73
+ directory.
74
+
75
+ * Unlike Stow, Dploy does not have any concept of ownership, but will only
76
+ operate on symbolic links and the creation or removal of directories for these
77
+ symbolic links.
78
+
@@ -0,0 +1,16 @@
1
+ dploy/__init__.py,sha256=_eyRaYuraMVwkgSco89MxTG_qanZfQfJgL_pwg2y3xI,972
2
+ dploy/__main__.py,sha256=0q5wl7SBdAm80KEnl1eG_MyZiGu2ll7u0LAILc8q-Ds,264
3
+ dploy/actions.py,sha256=7Ov7z-kPYMVX5WAX1oFQHdO-cxBTVQYJn4m7UlWppSQ,5964
4
+ dploy/cli.py,sha256=T8paBsXakdjUf5wvGFodA2L4_o1qnGKSrSV8Kisns8I,3111
5
+ dploy/error.py,sha256=NUbe9osfCO_rK6rNI3ZcaNIdmsFjgMBf6JTUEOQq5hE,4791
6
+ dploy/ignore.py,sha256=oUm2LFMgrbmkOJPvL2yT0_Ah2LmSywgZAWbd_1q9y7g,1909
7
+ dploy/linkcmd.py,sha256=of-JMMJ8OJSqH4GWaaFbmTkNvrFfcLKT8a6d2agQvuk,2500
8
+ dploy/main.py,sha256=Mfyitqpsg4Lk1FnWZQPNk5eX_-YPcqDPJrrynNjom5c,3491
9
+ dploy/stowcmd.py,sha256=zc7u6wqFjbM__x8wlCXp5UuP_ZpGCHd-7veWEaUt0KE,15248
10
+ dploy/utils.py,sha256=irHeA6UbJIJeBgpyQZH4_qE7uenH18TbLLEEw_stRiI,3197
11
+ dploy/version.py,sha256=ogQQPl26shzvlrEbgzZd-ghUkr5LzjnMJ02z_zhaO3o,150
12
+ dploy-0.1.3.dist-info/entry_points.txt,sha256=OMIUHEZFEPJiwO56mzq1DbOKuJlVpl8wPpkHXo946SY,45
13
+ dploy-0.1.3.dist-info/licenses/LICENSE.txt,sha256=EHGBCmrkbwwn4MpdYBTaKMEfJrkL2ZQ4S1wvqvaEgHs,1077
14
+ dploy-0.1.3.dist-info/METADATA,sha256=8uCl7aXwQ9xJUimDwpksegFsUj8YvsfNeEbZpFPMepY,3244
15
+ dploy-0.1.3.dist-info/WHEEL,sha256=kJCRJT_g0adfAJzTx2GUMmS80rTJIVHRCfG0DQgLq3o,88
16
+ dploy-0.1.3.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: poetry-core 2.3.1
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,3 @@
1
+ [console_scripts]
2
+ dploy=dploy.__main__:main
3
+
@@ -0,0 +1,19 @@
1
+ The MIT License (MIT)
2
+ Copyright (c) 2016 Ryan Carney
3
+
4
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
5
+ this software and associated documentation files (the "Software"), to deal in
6
+ the Software without restriction, including without limitation the rights to
7
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
8
+ the Software, and to permit persons to whom the Software is furnished to do so,
9
+ subject to the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be included in all
12
+ copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
16
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
17
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
18
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
19
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.