macaw_framework 1.2.0 → 1.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8fdecdae940a89142bf0252b2d0b818684f87b50d030c86c1523224aab684b0f
4
- data.tar.gz: bf7ff6874613d14f1a97f803ca3bc063269cc2fb5f34d17679fc694ca80ed2f2
3
+ metadata.gz: b0919e302e01808498550b142306c3c1049f3a295c8791cdf86aea193d80ca62
4
+ data.tar.gz: 7bef47be0b370ba9d70261af9e43c74394405fb104e961e18feed48a9ac2cdc9
5
5
  SHA512:
6
- metadata.gz: 85c4c95350b29411fcfa51bbfaf8929f9046d8927c8d8ebb56b7725f05680a0ec5845c4b9ad2a03aff07ab951289e81035711fe1a76132a534b51876543916d1
7
- data.tar.gz: 777150885e128a091f05e9d63548fd715a4fa36cf61f7ed350bf291dc75b22b12f5f69aa7252f4dea2dbee827d6a0c852830a1ea105c45919d5e08b486fc7b71
6
+ metadata.gz: 8b2b8b21bb72242f92d984cc274fc76aea1854c62a32c8bbf6200b8d597ea30004cf21dcc7bb9a92b739ea1e22691c987feb9e60df5e2432e23271cd3ab0ef13
7
+ data.tar.gz: 1b61ebd99268cd0b288bb1cb2bd6c1cc223ed3387d4437ec4fec8d1026d6f6eca033e9279d0324b0c563fa6b02854e9e87cc0b5d5706eb174ca87947ad84b73a
data/CHANGELOG.md CHANGED
@@ -108,6 +108,10 @@
108
108
  - Optimizing bug report template on GitHub
109
109
  - Optimizing return clause of the get_files_public_folder method
110
110
 
111
- ## [1.2.0] - 2023-09-17
111
+ ## [1.2.0] - 2023-10-05
112
112
 
113
113
  - Fixing bug where the server would accept new connections during shutdown
114
+
115
+ ## [1.2.1] - 2023-11-06
116
+
117
+ - Simplifying logging aspect for readability
data/README.md CHANGED
@@ -8,6 +8,7 @@ provides developers with the essential tools to quickly build and deploy their a
8
8
  - [MacawFramework](#macawframework)
9
9
  * [Features](#features)
10
10
  * [Installation](#installation)
11
+ * [Performance](#performance)
11
12
  * [Compatibility](#compatibility)
12
13
  * [MacawFramework's Built-In Web Server](#macawframeworks-built-in-web-server)
13
14
  * [Usage](#usage)
@@ -42,6 +43,10 @@ If bundler is not being used to manage dependencies, install the gem by executin
42
43
 
43
44
  $ gem install macaw_framework
44
45
 
46
+ ## Performance
47
+
48
+ We evaluated MacawFramework (Version 1.2.0) to assess its ability to handle simultaneous requests under heavy load. Disabling non-essential features, such as cache and logging, we observed remarkable results. The framework demonstrated efficient memory usage (243.3 MB average) and handled an impressive 600,000 HTTP requests with an average response time of just 1 millisecond. Throughput reached an outstanding 10,196.45 requests per second. These findings suggest that MacawFramework is well-equipped to handle substantial HTTP traffic without significant performance degradation. For detailed results, please refer to the [full report](https://github.com/ariasdiniz/macaw_performance_test).
49
+
45
50
  ## Compatibility
46
51
 
47
52
  MacawFramework is built to be highly compatible, since it uses only native Ruby code:
@@ -12,17 +12,12 @@ module LoggingAspect
12
12
  return super(*args) if logger.nil?
13
13
 
14
14
  endpoint_name = args[1].split(".")[1..].join("/")
15
- logger.info(LogDataFilter.sanitize_for_logging(
16
- "Request received for #{endpoint_name} with arguments: #{args[2..]}"
17
- ))
15
+ logger.info("Request received for [#{endpoint_name}] from [#{args[-1]}]")
18
16
 
19
17
  begin
20
18
  response = super(*args)
21
- logger.info(LogDataFilter.sanitize_for_logging("Response for #{endpoint_name}: #{response}"))
22
19
  rescue StandardError => e
23
- logger.error(
24
- LogDataFilter.sanitize_for_logging("Error processing #{endpoint_name}: #{e.message}\n#{e.backtrace.join("\n")}")
25
- )
20
+ logger.error("#{e.message}\n#{e.backtrace.join("\n")}")
26
21
  raise e
27
22
  end
28
23
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MacawFramework
4
- VERSION = "1.2.0"
4
+ VERSION = "1.2.1"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: macaw_framework
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aria Diniz
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-10-03 00:00:00.000000000 Z
11
+ date: 2023-11-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: prometheus-client