shattered_machine 0.0.2 → 0.0.3

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 270e23322ce44e6a921c93d0b88dbeb982b4eb28b37a2f33ac3abe38b32e6dad
4
- data.tar.gz: 3b1804b2f89d4f930841858d90b45a9de764d864038cdcf8c6b82c26d98196e4
3
+ metadata.gz: 28ad50443747414310eb9007d97f618a1cdd855723df9ab2455b482eb1160b1f
4
+ data.tar.gz: fba7f95d7a020f6548f6b154c9cb89cd0b4b55c6d8427ce1b319cbd2c9294e18
5
5
  SHA512:
6
- metadata.gz: 3c7af5d305304c1fff124c87e770a82bc9b1ca1851eb595e3d4ba413a7355117815a7310a9614dc118815d0751c172e14f3f07014713329c2008b8f0dcc07773
7
- data.tar.gz: 02c3e621bcb430b1dde66fb232af088f70a26a564d3d761db8a92c7a606f04f6aad16fceb5811ee0d74050e61aa8f960639168d23ca0f3c6887b71d7ee6f5a47
6
+ metadata.gz: 73a2d147f7f27be2db8fb92962448c3fbed6d73cb3ce6933a07234f2b3f04938f614211704e9970c585a956b3e490d366664abf120dbc745b5f3c386a6649c34
7
+ data.tar.gz: 7ad0e654382ff1a24a495f7e9ca7e963a0c21ae6765c72f94770ca95c3b49a9171d03a1dd6abd3c0ff5add3f7b17fb0e3e7d48c7518e81822eef920041e30409
data/.gitignore CHANGED
@@ -9,3 +9,4 @@ Gemfile.lock
9
9
  coverage
10
10
  doc/file.README.html
11
11
  *.gem
12
+ .yardoc/
data/CHANGELOG ADDED
@@ -0,0 +1,9 @@
1
+ # Changelog
2
+ All notable changes to this project will be documented in this file.
3
+
4
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
+
7
+ ## [0.0.3] - 2021-05-26
8
+ ### Changed
9
+ - Replaces Rusty Engine library with the gem encapsulating those files
data/Gemfile CHANGED
@@ -2,6 +2,7 @@ source 'https://rubygems.org'
2
2
 
3
3
  gem 'ffi'
4
4
  gem 'pnglitch'
5
+ gem 'rusty_engine_ffi'
5
6
 
6
7
  group :test do
7
8
  gem 'rspec'
data/README.md CHANGED
@@ -1,7 +1,9 @@
1
1
  # Shattered Machine
2
2
 
3
- The Shattered Machine is a gem that aim to create glitched png images easily.
3
+ The Shattered Machine is a gem that aim to create glitched png images easily.
4
4
 
5
+ * [Rubygems page](https://rubygems.org/gems/shattered_machine)
6
+ * [Documentation](https://www.rubydoc.info/gems/shattered_machine)
5
7
  ## Features
6
8
 
7
9
  - Converter : Convert a single jpg images or a directory full of jpg image into png
@@ -15,7 +17,7 @@ The Shattered Machine is a gem that aim to create glitched png images easily.
15
17
  ```ruby
16
18
  require 'shattered_machine'
17
19
 
18
- io = ShatteredMachine::Io.new( 'input_image.png', 'output_folder', 'output_filename')
20
+ io = ShatteredMachine::Io.new('input_image.png', 'output_folder', 'output_filename')
19
21
  ShatteredMachine::Glitcher.new('Slim', io).call
20
22
  ```
21
23
 
@@ -24,7 +26,7 @@ ShatteredMachine::Glitcher.new('Slim', io).call
24
26
  ```ruby
25
27
  require 'shattered_machine'
26
28
 
27
- io = ShatteredMachine::Io.new( 'input_image.png', 'output_folder', 'output_filename')
29
+ io = ShatteredMachine::Io.new('input_image.png', 'output_folder', 'output_filename')
28
30
  ShatteredMachine::Sampler.new(io).call
29
31
  ```
30
32
 
@@ -33,11 +35,13 @@ ShatteredMachine::Sampler.new(io).call
33
35
  ```ruby
34
36
  require 'shattered_machine'
35
37
 
36
- io = ShatteredMachine::Io.new( 'input_image.jpg', 'output_folder', 'output_filename')
38
+ io = ShatteredMachine::Io.new('input_image.jpg', 'output_folder', 'output_filename')
37
39
  ShatteredMachine::Converter.new(io).call
38
40
  ```
39
41
 
40
42
  ## Development
43
+ ### Install locally
44
+
41
45
  The Shattered Machine using two main libraries for glitching :
42
46
  - [pnglitch](https://github.com/ucnv/pnglitch)
43
47
  - [rusty engine](https://framagit.org/Radoteur/rusty_engine)
@@ -6,7 +6,7 @@ require 'shattered_machine/io'
6
6
 
7
7
  # main file for ShatteredMachine gem
8
8
  module ShatteredMachine
9
- VERSION = '0.0.2'
9
+ VERSION = '0.0.3'
10
10
 
11
11
  class << self
12
12
  end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../rusty_engine/rusty_engine'
3
+ require 'rusty_engine'
4
4
 
5
5
  module ShatteredMachine
6
6
  # Brush pixels of a given png image.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../rusty_engine/rusty_engine'
3
+ require 'rusty_engine'
4
4
 
5
5
  module ShatteredMachine
6
6
  # Convert jpg image in png image
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../rusty_engine/rusty_engine'
3
+ require 'rusty_engine'
4
4
 
5
5
  module ShatteredMachine
6
6
  # Sort pixels of a given png image.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative '../rusty_engine/rusty_engine'
3
+ require 'rusty_engine'
4
4
 
5
5
  module ShatteredMachine
6
6
  # Repeat pixels of a given png image.
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'shattered_machine'
3
- s.version = '0.0.2'
3
+ s.version = '0.0.3'
4
4
  s.summary = 'Shattered Machine core engine'
5
5
  s.description = 'Shattered Machine is an easy way to glitch PNG images using different algorithms'
6
6
  s.authors = ['Flo Girardo']
data/spec/spec_helper.rb CHANGED
@@ -12,7 +12,6 @@ RSpec.configure do |config|
12
12
  config.shared_context_metadata_behavior = :apply_to_host_groups
13
13
 
14
14
  $LOAD_PATH.unshift File.expand_path('..', __dir__)
15
- require 'lib/rusty_engine/rusty_engine'
16
15
  require 'lib/shattered_machine/converter'
17
16
  require 'lib/shattered_machine/brush'
18
17
  require 'lib/shattered_machine/change_byte'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shattered_machine
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Flo Girardo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-23 00:00:00.000000000 Z
11
+ date: 2021-05-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -47,11 +47,7 @@ extra_rdoc_files: []
47
47
  files:
48
48
  - ".gitignore"
49
49
  - ".rspec"
50
- - ".yardoc/checksums"
51
- - ".yardoc/complete"
52
- - ".yardoc/object_types"
53
- - ".yardoc/objects/root.dat"
54
- - ".yardoc/proxy_types"
50
+ - CHANGELOG
55
51
  - Gemfile
56
52
  - LICENSE
57
53
  - README.md
@@ -65,7 +61,6 @@ files:
65
61
  - doc/ShatteredMachine/Io.html
66
62
  - doc/ShatteredMachine/Io/Paths.html
67
63
  - doc/ShatteredMachine/PixelSorter.html
68
- - doc/ShatteredMachine/RustyEngine.html
69
64
  - doc/ShatteredMachine/Sampler.html
70
65
  - doc/ShatteredMachine/Slim.html
71
66
  - doc/ShatteredMachine/Transpose.html
@@ -83,10 +78,6 @@ files:
83
78
  - doc/js/jquery.js
84
79
  - doc/method_list.html
85
80
  - doc/top-level-namespace.html
86
- - lib/rusty_engine/librusty_engine.dll
87
- - lib/rusty_engine/librusty_engine.dylib
88
- - lib/rusty_engine/librusty_engine.so
89
- - lib/rusty_engine/rusty_engine.rb
90
81
  - lib/shattered_machine.rb
91
82
  - lib/shattered_machine/brush.rb
92
83
  - lib/shattered_machine/change_byte.rb
@@ -114,7 +105,6 @@ files:
114
105
  - spec/images/fuzz.JPG
115
106
  - spec/images/pouet.JPEG
116
107
  - spec/io_spec.rb
117
- - spec/lib/rusty_engine_spec.rb
118
108
  - spec/pixel_sorter_spec.rb
119
109
  - spec/sampler_spec.rb
120
110
  - spec/slim_spec.rb
data/.yardoc/checksums DELETED
@@ -1,14 +0,0 @@
1
- lib/shattered_machine.rb e5d8db3b105d5d0409ff7211617ea36044986a0a
2
- lib/shattered_machine/io.rb 02fface2a883b962a3c27ffba497af8aad184993
3
- lib/shattered_machine/slim.rb 1f0def79e7f6631d6b9b239d5d11f512d761815f
4
- lib/shattered_machine/brush.rb d0c27748daffefd4b40ecee2feff395d1dd3a1da
5
- lib/shattered_machine/defect.rb b2402bad054d51847fd3b83d597014e8e97a2fe8
6
- lib/rusty_engine/rusty_engine.rb 530c6563814f0c230f14606e96468962d2ae88c3
7
- lib/shattered_machine/sampler.rb 51823b7678fd9da8868a2c6e847727b2d51d24b3
8
- lib/shattered_machine/exchange.rb d230bc77bb9dfc34ea89e55892a6a33ec028d4b6
9
- lib/shattered_machine/glitcher.rb 071744286d68720fe47d7dfae2e033fdcff1cf69
10
- lib/shattered_machine/converter.rb da5eeda73917386592612d0834a7c4d4467d5df2
11
- lib/shattered_machine/transpose.rb 412ae07a4bf92dd8ba7383bce7558b85ad369e6a
12
- lib/shattered_machine/change_byte.rb 445fc0f28fe02eaf83e711e1d616862128a86be4
13
- lib/shattered_machine/pixel_sorter.rb 8670ff9c56a769797654ebd41f358ce48cd72962
14
- lib/shattered_machine/wrong_filter.rb a71a6b72cd152d3106e266e4736369cff7fdb6b1
data/.yardoc/complete DELETED
File without changes
data/.yardoc/object_types DELETED
Binary file
Binary file
data/.yardoc/proxy_types DELETED
Binary file
@@ -1,122 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>
7
- Module: ShatteredMachine::RustyEngine
8
-
9
- &mdash; Documentation by YARD 0.9.26
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="../css/style.css" type="text/css" />
14
-
15
- <link rel="stylesheet" href="../css/common.css" type="text/css" />
16
-
17
- <script type="text/javascript">
18
- pathId = "ShatteredMachine::RustyEngine";
19
- relpath = '../';
20
- </script>
21
-
22
-
23
- <script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
24
-
25
- <script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
26
-
27
-
28
- </head>
29
- <body>
30
- <div class="nav_wrap">
31
- <iframe id="nav" src="../class_list.html?1"></iframe>
32
- <div id="resizer"></div>
33
- </div>
34
-
35
- <div id="main" tabindex="-1">
36
- <div id="header">
37
- <div id="menu">
38
-
39
- <a href="../_index.html">Index (R)</a> &raquo;
40
- <span class='title'><span class='object_link'><a href="../ShatteredMachine.html" title="ShatteredMachine (module)">ShatteredMachine</a></span></span>
41
- &raquo;
42
- <span class="title">RustyEngine</span>
43
-
44
- </div>
45
-
46
- <div id="search">
47
-
48
- <a class="full_list_link" id="class_list_link"
49
- href="../class_list.html">
50
-
51
- <svg width="24" height="24">
52
- <rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
53
- <rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
54
- <rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
55
- </svg>
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
60
- </div>
61
-
62
- <div id="content"><h1>Module: ShatteredMachine::RustyEngine
63
-
64
-
65
-
66
- </h1>
67
- <div class="box_info">
68
-
69
-
70
-
71
-
72
- <dl>
73
- <dt>Extended by:</dt>
74
- <dd>FFI::Library</dd>
75
- </dl>
76
-
77
-
78
-
79
-
80
-
81
-
82
-
83
-
84
- <dl>
85
- <dt>Defined in:</dt>
86
- <dd>lib/rusty_engine/rusty_engine.rb</dd>
87
- </dl>
88
-
89
- </div>
90
-
91
- <h2>Overview</h2><div class="docstring">
92
- <div class="discussion">
93
-
94
- <p>Add the following functions from the <a href="https://framagit.org/Radoteur/rusty_engine" target="_parent" title="Optional Rusty Engine">Optional Rusty Engine</a> using FFI : convert, brush, slim, sort.</p>
95
-
96
-
97
- </div>
98
- </div>
99
- <div class="tags">
100
-
101
-
102
- </div>
103
-
104
-
105
-
106
-
107
-
108
-
109
-
110
-
111
-
112
- </div>
113
-
114
- <div id="footer">
115
- Generated on Sun May 23 18:36:58 2021 by
116
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
117
- 0.9.26 (ruby-2.6.6).
118
- </div>
119
-
120
- </div>
121
- </body>
122
- </html>
Binary file
Binary file
Binary file
@@ -1,43 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'ffi'
4
-
5
- module ShatteredMachine
6
- # Add the following functions from the {https://framagit.org/Radoteur/rusty_engine Optional Rusty Engine} using FFI :
7
- # convert, brush, slim, sort.
8
- module RustyEngine
9
- extend FFI::Library
10
- lib_name = "librusty_engine.#{FFI::Platform::LIBSUFFIX}"
11
- ffi_lib File.expand_path(lib_name, __dir__)
12
-
13
- # Params : input output
14
- attach_function :convert, %i[string string], :void, { blocking: true }
15
-
16
- # Params : input output proba min max direction
17
- # Directions : 1 -> horizontal
18
- # 2 -> vertical
19
- # 3 -> horizontal_inverted
20
- # 4 -> vertical_inverted
21
- attach_function :brush, %i[string string string string string string], :void, { blocking: true }
22
-
23
- # Params : input, output, proba, probability_area, direction, colors, color_with_proba
24
- # Directions : 1 -> up_to_down
25
- # 2 -> down_to_up
26
- # 3 -> left_to_right
27
- # 4 -> right_to_left
28
- attach_function :slim, %i[string string string string string string string], :void, { blocking: true }
29
-
30
- # Params : input, output, direction, smart_sorting, detection_type, min, max, multiple_range, min_2, max_2,
31
- # sorting_by
32
- # directions : 0 -> up_to_down
33
- # 1 -> down_to_up
34
- # 2 -> left_to_right
35
- # 3 -> right_to_left
36
- # detection_type : 0 -> hues
37
- # 1 -> colors
38
- # sorting_by : 0 -> hue
39
- # 1 -> saturation
40
- attach_function :sort, %i[string string string string string string string string string string string],
41
- :void, { blocking: true }
42
- end
43
- end
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'spec_helper'
4
-
5
- RSpec.describe ShatteredMachine::RustyEngine do
6
- describe '.convert' do
7
- let(:converted_file) { 'spec/images/converted.png' }
8
- subject { ShatteredMachine::RustyEngine.convert('spec/images/foo.jpg', converted_file) }
9
-
10
- after do
11
- File.delete(converted_file) if File.exist?(converted_file)
12
- end
13
-
14
- it 'convert image' do
15
- subject
16
- expect(File.exist?(converted_file)).to be true
17
- end
18
- end
19
- end