enola-rb 0.4.4 → 0.4.4.1

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: 8187cf70720cf851a17def67c9ca82f66766dbf0437779037143298f7b219aec
4
- data.tar.gz: da2463ad162461bfcf32015aa7074ef6e5c534e50c3533c995077c53fd1298ab
3
+ metadata.gz: 658b73fa861835a5a16543d8a01df73071731416f3bcb72d9486a2a946de6e07
4
+ data.tar.gz: 484d12481e8e6ee1463e5591dbfac60dbd88e2d696203e6eedf9ca7bf7865b59
5
5
  SHA512:
6
- metadata.gz: bd244d2988659a63032fca993b743a12897cc18eaf722e826c4f1f4e63620d60932f0ba481ff095260f0cd9f60bd669d5add4dd4c0b16d3b114fe58b5503456b
7
- data.tar.gz: 3faf0965d57a14e8e853a444d9481fd90ae14732006ffc73eb0e2b1da9b14c4740f5af3728bceecb6ff08e370c3b9f335685004976737eacd609fb2c940397bc
6
+ metadata.gz: b869c59958778ed2d83e36a9736de7ceefda2b5eea4fcf5314b39a61ebab3f1d3845dc79e94a795d05246e21bfbfa63f1d7b900a8a7a7d5f800cc759f6128da3
7
+ data.tar.gz: c0800f82499e1202b7deffbdf2da7993b14df0d5ac19bd4646655f1ef0b0253441b31d0df857bba504b66c2d69fabb8fed3cd521350cd3f5e8d68ca746d49c24
data/CHANGELOG.md CHANGED
@@ -1,3 +1,34 @@
1
+ ## munola 0.4.4.2 and munola-rb 0.4.4.2 (2026-08-23)
2
+
3
+ munola follows the channel it drives. Its binary is now cut from the stable
4
+ channel after it took eight changes measured against a Ruby architecture
5
+ linter, so the gem's version moves with the release it fetches. The Rails
6
+ layer is its own gem, `munola-rb`, the way `enola-rb` is for the upstream
7
+ channel; `require "munola"` loads no Rails. A catalogue recipe the binary
8
+ already binds is no longer bound a second time.
9
+
10
+ ## enola 0.4.4.1 and enola-rb 0.4.4.1 (2026-08-23)
11
+
12
+ Wrapper fixes on the same upstream release. A test that set the channel put
13
+ back upstream rather than what it found, so on some orderings a channel gem's
14
+ own installation read as upstream. The Rails layer packaged its generator
15
+ through a glob wide enough to take another channel's; it now packages its own.
16
+ Both gems still drive upstream v0.4.4.
17
+
18
+ ## munola-rb 0.4.4.1 (2026-08-23)
19
+
20
+ The Rails layer over munola, what enola-rb is to enola: `rails generate
21
+ munola:install [--tenant-column COLUMN]` writes the starter laws, the
22
+ bindings the binary's own init picks and the munola catalogue, and the
23
+ enola:init, enola:snapshot and enola:check tasks drive munola's binary
24
+ because munola installs its own resolver. The generator and the railtie
25
+ move here out of the munola gem, so `require "munola"` loads no Rails and a
26
+ project that only drives the binary carries no Rails machinery. The recipe
27
+ catalogue, the detection and the tenant-column argument stay munola's.
28
+
29
+ `Enola.resolver_factory` is readable as well as writable, so whoever
30
+ replaces it can put back what was installed rather than what it assumed.
31
+
1
32
  ## munola 0.4.4.1 (2026-08-23)
2
33
 
3
34
  The wrapper over the munola channel, first release with an implementation.
data/README.md CHANGED
@@ -1,9 +1,14 @@
1
1
  # enola-rb
2
2
 
3
- Three pure-Ruby gems, one repository, for running
3
+ Four pure-Ruby gems, one repository, for running
4
4
  [enola](https://github.com/enola-labs/enola), the architecture-graph tool,
5
5
  from Ruby. None of them carries a binary or compiles anything.
6
6
 
7
+ Two channels, the same layering on both: `enola` wraps the released upstream
8
+ binary and `enola-rb` adds the Rails layer on it; `munola` wraps the munola
9
+ binary and `munola-rb` adds the Rails layer on that. The Rails code is written
10
+ once, in `enola-rb`, and the munola gems add only what is munola's own.
11
+
7
12
  ## `enola`
8
13
 
9
14
  The wrapper of the released enola. Its version is the upstream release it
@@ -78,8 +83,7 @@ gem "munola"
78
83
  ```
79
84
 
80
85
  ```sh
81
- bin/rails generate munola:install --tenant-column company_id
82
- bundle exec munola init .
86
+ bundle exec munola init . --tenant-column company_id
83
87
  bundle exec munola --version
84
88
  ```
85
89
 
@@ -97,7 +101,28 @@ into the binary, and fetches the Rubydex library, a failed fetch reported as a
97
101
  named skip. It never asks a question. `munola --version` names the munola
98
102
  version, the upstream it is built on and which binary answered.
99
103
 
100
- The first munola release is what makes the channel real; until it is cut,
101
- `MUNOLA_BINARY=/path/to/enola` names the binary to drive, and every command
102
- says so. `munola` depends on `enola` and `enola-rb` at its upstream version
103
- and on `enola-guides` 0.3.1 or later.
104
+ The binary comes from the fork's releases the way `enola`'s comes from
105
+ upstream's, fetched on first use and verified against the sha256 the release
106
+ publishes; `MUNOLA_BINARY=/path/to/enola` names one to drive instead, and
107
+ every command says which answered. `munola` depends on `enola` at its upstream
108
+ version and on `enola-guides` 0.3.1 or later; requiring it loads no Rails.
109
+
110
+ ## `munola-rb`
111
+
112
+ The Rails layer over `munola`, what `enola-rb` is to `enola`. It depends on
113
+ both at their own versions and adds one generator.
114
+
115
+ ```ruby
116
+ gem "munola-rb"
117
+ ```
118
+
119
+ ```sh
120
+ bin/rails generate munola:install --tenant-column company_id
121
+ bin/rake enola:snapshot
122
+ bin/rake enola:check
123
+ ```
124
+
125
+ The generator runs the same install `munola init` does. The rake tasks are
126
+ enola-rb's and need no munola copy: `munola` installs its own resolver when it
127
+ loads, so `enola:snapshot` and `enola:check` drive the munola binary in an app
128
+ that has this gem, and the upstream binary in one that does not.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module EnolaRb
4
- VERSION = "0.4.4"
4
+ VERSION = "0.4.4.1"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: enola-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.4.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Muhamed Isabegovic
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.4.4
19
+ version: 0.4.4.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.4.4
26
+ version: 0.4.4.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: enola-guides
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -61,7 +61,6 @@ files:
61
61
  - lib/enola_rb/tasks.rake
62
62
  - lib/enola_rb/version.rb
63
63
  - lib/generators/enola/install/install_generator.rb
64
- - lib/generators/munola/install/install_generator.rb
65
64
  homepage: https://github.com/misabegovic/enola-rb
66
65
  licenses:
67
66
  - Apache-2.0
@@ -1,19 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "rails/generators"
4
- require "munola"
5
-
6
- module Munola
7
- module Generators
8
- class InstallGenerator < Rails::Generators::Base
9
- desc "Writes enola/constraints/ and the munola recipe catalogue, binding what the tree shows a need for"
10
- class_option :tenant_column, type: :string, default: nil, desc: "The column most tables carry; confirmed against db/schema.rb"
11
-
12
- def install
13
- Munola::Installer.new(destination_root, tenant_column: options[:tenant_column]).install.lines.each { |line| say line }
14
- rescue Enola::Error => e
15
- raise Thor::Error, "munola: #{e.message}"
16
- end
17
- end
18
- end
19
- end