eyes_universal 4.24.2 → 4.28.0

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: 27a70d9a4c6617f705037c7ecba64f1fd6e31ac6c74304757f96e03069c05897
4
- data.tar.gz: bd1f9817a7d1f54a4f572fda8f75c36c4b31da5779ae5e2b24221d97f793bfa8
3
+ metadata.gz: a8574092d5534931c7a0156abefb5fe08bc347b6d04c63b1b255e3e67c857b74
4
+ data.tar.gz: b847eb95ddbd9f7e98d08b8a34dae92a5f5e8c448fafed1b01a73f8086f131dd
5
5
  SHA512:
6
- metadata.gz: ee938fe0b1760d74375f90032b31d94856ad0a79cd5017586caa5cdf93086e1201fafa8f3555a47f31ac5dff4ea0bb1b66c15654c3f468055bc301e774d4060e
7
- data.tar.gz: d972dd5e36256233ac3de3fcb9b3c8646f47b83f5f9624cbaf42f74d280e555fd3ef51181eb268ff2f2d4d68273ff1fb1311bac994ca15f4aaab658e635ca987
6
+ metadata.gz: 2ed61c8b661e1740d29cfd558d172de969671ea5e8b2885b7dcecb1af67e01d1d87669fa07065f07ecf2fbb16dee6d8a7b8be57839cdffe694781c838c39e1f4
7
+ data.tar.gz: 74c8e52bf167396f235002e7ccd889711d7243f14df7b63536a96d3a052f062be1814d80e9caff15942b71db3cd13cd1bd743dd2e5484c5410e2a7470e120643
data/CHANGELOG.md CHANGED
@@ -1,5 +1,108 @@
1
1
  # Changelog
2
2
 
3
+ ## [4.28.0](https://github.com/Applitools-Dev/sdk/compare/ruby/eyes_universal@4.24.2...ruby/eyes_universal@4.28.0) (2024-12-31)
4
+
5
+
6
+ ### Features
7
+
8
+ * logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
9
+
10
+
11
+ ### Dependencies
12
+
13
+ * @applitools/utils bumped to 1.7.7
14
+ #### Bug Fixes
15
+
16
+ * shim process execution functions for browser environment ([#2698](https://github.com/Applitools-Dev/sdk/issues/2698)) ([8d77db4](https://github.com/Applitools-Dev/sdk/commit/8d77db48e1c7fd54cad92c89a819a924255e5868))
17
+ * @applitools/logger bumped to 2.1.0
18
+ #### Features
19
+
20
+ * logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
21
+
22
+
23
+
24
+ * @applitools/dom-snapshot bumped to 4.11.13
25
+ #### Bug Fixes
26
+
27
+ * code scanning issue ([#2687](https://github.com/Applitools-Dev/sdk/issues/2687)) ([f301056](https://github.com/Applitools-Dev/sdk/commit/f301056cccfc9cc0c21ceedbd521d8f4b054f058))
28
+
29
+
30
+
31
+ * @applitools/socket bumped to 1.2.0
32
+ #### Features
33
+
34
+ * logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
35
+
36
+
37
+
38
+ * @applitools/core-base bumped to 1.22.0
39
+ #### Features
40
+
41
+ * deterministic output in offline execution ([#2711](https://github.com/Applitools-Dev/sdk/issues/2711)) ([5e8c7ca](https://github.com/Applitools-Dev/sdk/commit/5e8c7ca43c98e7ba6aed0c1a66c5a60b4001aeff))
42
+ * logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
43
+
44
+
45
+
46
+ * @applitools/req bumped to 1.7.6
47
+
48
+ * @applitools/image bumped to 1.1.16
49
+
50
+ * @applitools/dom-capture bumped to 11.5.3
51
+ #### Bug Fixes
52
+
53
+ * code scanning issue ([#2687](https://github.com/Applitools-Dev/sdk/issues/2687)) ([f301056](https://github.com/Applitools-Dev/sdk/commit/f301056cccfc9cc0c21ceedbd521d8f4b054f058))
54
+ * @applitools/driver bumped to 1.20.2
55
+
56
+ * @applitools/spec-driver-puppeteer bumped to 1.4.22
57
+
58
+ * @applitools/tunnel-client bumped to 1.6.0
59
+ #### Features
60
+
61
+ * logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
62
+
63
+
64
+
65
+ * @applitools/ec-client bumped to 1.10.0
66
+ #### Features
67
+
68
+ * logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
69
+
70
+
71
+
72
+ * @applitools/spec-driver-webdriver bumped to 1.1.22
73
+
74
+ * @applitools/spec-driver-selenium bumped to 1.5.93
75
+
76
+ * @applitools/screenshoter bumped to 3.10.2
77
+
78
+ * @applitools/nml-client bumped to 1.8.21
79
+
80
+ * @applitools/ufg-client bumped to 1.16.0
81
+ #### Features
82
+
83
+ * deterministic output in offline execution ([#2711](https://github.com/Applitools-Dev/sdk/issues/2711)) ([5e8c7ca](https://github.com/Applitools-Dev/sdk/commit/5e8c7ca43c98e7ba6aed0c1a66c5a60b4001aeff))
84
+
85
+
86
+ #### Bug Fixes
87
+
88
+ * code scanning issue ([#2687](https://github.com/Applitools-Dev/sdk/issues/2687)) ([f301056](https://github.com/Applitools-Dev/sdk/commit/f301056cccfc9cc0c21ceedbd521d8f4b054f058))
89
+
90
+
91
+
92
+ * @applitools/core bumped to 4.28.0
93
+ #### Features
94
+
95
+ * deterministic output in offline execution ([#2711](https://github.com/Applitools-Dev/sdk/issues/2711)) ([5e8c7ca](https://github.com/Applitools-Dev/sdk/commit/5e8c7ca43c98e7ba6aed0c1a66c5a60b4001aeff))
96
+ * logger masking ([#2640](https://github.com/Applitools-Dev/sdk/issues/2640)) ([bd69d21](https://github.com/Applitools-Dev/sdk/commit/bd69d21f6341447b1acdb042f4ee1a6328d7428f))
97
+
98
+
99
+ #### Bug Fixes
100
+
101
+ * take snapshots with coded regions on pages that has cross origin frames ([#2705](https://github.com/Applitools-Dev/sdk/issues/2705)) ([5972fec](https://github.com/Applitools-Dev/sdk/commit/5972fec890a1454a9f96c4eddcf17634e72111aa))
102
+
103
+
104
+
105
+
3
106
  ## [4.24.2](https://github.com/Applitools-Dev/sdk/compare/ruby/eyes_universal@4.21.2...ruby/eyes_universal@4.24.2) (2024-11-27)
4
107
 
5
108
 
Binary file
@@ -17,10 +17,18 @@ module Applitools::EyesUniversal
17
17
 
18
18
  def executable_filepath
19
19
  raise 'Universal server not Found' if server_lib.nil?
20
+ if RUBY_PLATFORM =~ /darwin.*arm64|aarch64/i
21
+ puts "[WARN] Running on Apple Silicon (M1/M2) - using Intel binary with Rosetta"
22
+ end
23
+
20
24
  return filepath if valid_file?(filepath)
21
25
  core_path = other_filepaths.find {|path| valid_file?(path) }
22
26
  return core_path if core_path
23
- raise 'Universal server unrecognized'
27
+
28
+ raise "Universal server binary not found for platform #{RUBY_PLATFORM}. " \
29
+ "Expected binary: #{filename} in paths:\n" \
30
+ "- Primary: #{filepath}\n" \
31
+ "- Fallback: #{other_filepaths.join("\n ")}"
24
32
  end
25
33
 
26
34
  private
@@ -33,20 +41,25 @@ module Applitools::EyesUniversal
33
41
 
34
42
  def filename
35
43
  return 'core-win.exe' if Gem.win_platform?
36
- case RUBY_PLATFORM
37
- when /darwin/i
38
- 'core-macos'
39
- when /arm/i
40
- 'core-linux-arm64'
41
- when /mswin|windows|mingw/i
42
- 'core-win.exe'
43
- when /musl/i
44
- 'core-alpine'
45
- when /linux|arch/i
46
- 'core-linux'
44
+
45
+ platform = RUBY_PLATFORM.downcase
46
+
47
+ # First, handle specific platform combinations
48
+ if platform.include?('darwin')
49
+ return 'core-macos'
50
+ elsif platform.include?('linux')
51
+ if platform.include?('arm64') || platform.include?('aarch64')
52
+ return 'core-linux-arm64'
53
+ elsif platform.include?('musl')
54
+ return 'core-alpine'
47
55
  else
48
- raise 'Unsupported platform'
56
+ return 'core-linux'
57
+ end
58
+ elsif platform.match?(/mswin|mingw|windows/)
59
+ return 'core-win.exe'
49
60
  end
61
+
62
+ raise "Unsupported platform: #{RUBY_PLATFORM}"
50
63
  end
51
64
 
52
65
  def valid_file?(path)
@@ -37,28 +37,32 @@ module Applitools
37
37
  end
38
38
 
39
39
  def filename
40
- return 'core-win.exe' if Gem.win_platform?
41
- case RUBY_PLATFORM
42
- when /darwin/i
43
- 'core-macos'
44
- when /arm/i
45
- 'core-linux-arm64'
46
- when /mswin|windows|mingw/i
47
- 'core-win.exe'
48
- when /musl/i
49
- 'core-alpine'
50
- when /linux|arch/i
51
- 'core-linux'
52
- else
53
- raise "Unsupported platform #{RUBY_PLATFORM}"
54
- end
40
+ return 'core-win.exe' if Gem.win_platform?
41
+
42
+ platform = RUBY_PLATFORM.downcase
43
+
44
+ # First, handle specific platform combinations
45
+ if platform.include?('darwin')
46
+ return 'core-macos'
47
+ elsif platform.include?('linux')
48
+ if platform.include?('arm64') || platform.include?('aarch64')
49
+ return 'core-linux-arm64'
50
+ elsif platform.include?('musl')
51
+ return 'core-alpine'
52
+ else
53
+ return 'core-linux'
54
+ end
55
+ elsif platform.match?(/mswin|mingw|windows/)
56
+ return 'core-win.exe'
57
+ end
58
+
59
+ raise "Unsupported platform: #{RUBY_PLATFORM}"
55
60
  end
56
61
 
57
62
  def tar_gz_filename
58
63
  'core.tar.gz'
59
64
  end
60
65
 
61
-
62
66
  end
63
67
  end
64
68
  end
@@ -12,12 +12,19 @@ module Applitools::EyesUniversal
12
12
  DEFAULT_SERVER_HOST = 'localhost'
13
13
  EXECUTABLE_FILEPATH = Applitools::EyesUniversal::UniversalServerGemFinder.executable_filepath
14
14
 
15
+ class << self
16
+ def configure(mask_log = nil)
17
+ @mask_log = mask_log
18
+ end
19
+ end
20
+
15
21
  def initialize
16
22
  @control_pipe = nil
17
23
  @port_pipe = nil
18
24
  @usdk_pid = nil
19
25
  @monitoring_thread = nil
20
26
  @port = nil
27
+ @mask_log = self.class.instance_variable_get(:@mask_log)
21
28
  start_server_with_pipe
22
29
  @sockets = []
23
30
  end
@@ -60,9 +67,16 @@ module Applitools::EyesUniversal
60
67
  def start_server_with_pipe
61
68
  in_pipe, @control_pipe = IO.pipe
62
69
  @port_pipe, port_w = IO.pipe
70
+ spawn_args = [
71
+ EXECUTABLE_FILEPATH, 'universal', '--no-singleton', '--shutdown-mode', 'stdin'
72
+ ]
73
+
74
+ if @mask_log
75
+ spawn_args.push('--maskLog')
76
+ end
63
77
 
64
78
  @usdk_pid = spawn(
65
- EXECUTABLE_FILEPATH, 'universal', '--no-singleton', '--shutdown-mode', 'stdin',
79
+ *spawn_args,
66
80
  in: in_pipe, out: port_w, err: port_w,
67
81
  # close_others: true
68
82
  )
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Applitools
4
4
  module EyesUniversal
5
- VERSION = '4.24.2'.freeze
5
+ VERSION = '4.28.0'.freeze
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eyes_universal
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.24.2
4
+ version: 4.28.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Applitools Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-11-27 00:00:00.000000000 Z
11
+ date: 2024-12-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: open-uri