decidim-core 0.25.0.rc2 → 0.25.0.rc3
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.
Potentially problematic release.
This version of decidim-core might be problematic. Click here for more details.
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 7501cdb061920f3c951740c5df3c6d6b06df3b3ae6e39e08885dd02eb3b7071e
         | 
| 4 | 
            +
              data.tar.gz: b9f623717650dc6c2430e98f3950c158f67390683dcd9f1fd9f7a59910916813
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 4c737ee3bddfcbe9308288720e1202d1dc608bdcc01ca2ebb9bdc759c8e6e0cc2f9850c25854d4b4bae0acf24a593c18eeaed6e19296e73e43c7912b08b15a0b
         | 
| 7 | 
            +
              data.tar.gz: aedb81b1e86057d32427cc362e74b271f5215c2d4aa44a31fd6befd18d4c33977b6175277701a1d60f51cc3e7f0e7b67eb9ad4bd18913c66f984dc49b29d611b
         | 
| @@ -143,9 +143,10 @@ shared_examples "comments" do | |
| 143 143 | 
             
                    end
         | 
| 144 144 | 
             
                  end
         | 
| 145 145 |  | 
| 146 | 
            -
                  it "shows comment to the user  | 
| 146 | 
            +
                  it "shows comment to the user, updates the comments counter and clears the comment textarea" do
         | 
| 147 147 | 
             
                    expect(page).to have_comment_from(user, "This is a new comment", wait: 20)
         | 
| 148 148 | 
             
                    expect(page).to have_selector("span.comments-count", text: "#{commentable.comments.count} COMMENTS")
         | 
| 149 | 
            +
                    expect(page).to have_field("add-comment-#{commentable.commentable_type.demodulize}-#{commentable.id}", with: "")
         | 
| 149 150 | 
             
                  end
         | 
| 150 151 | 
             
                end
         | 
| 151 152 |  | 
| @@ -166,6 +167,55 @@ shared_examples "comments" do | |
| 166 167 | 
             
                  end
         | 
| 167 168 | 
             
                end
         | 
| 168 169 |  | 
| 170 | 
            +
                context "when the user is writing a new comment while someone else comments" do
         | 
| 171 | 
            +
                  let(:new_comment_body) { "Hey, I just jumped in the conversation!" }
         | 
| 172 | 
            +
                  let(:new_comment) { build(:comment, commentable: commentable, body: new_comment_body) }
         | 
| 173 | 
            +
             | 
| 174 | 
            +
                  before do
         | 
| 175 | 
            +
                    within ".add-comment form" do
         | 
| 176 | 
            +
                      fill_in "add-comment-#{commentable.commentable_type.demodulize}-#{commentable.id}", with: "This is a new comment"
         | 
| 177 | 
            +
                    end
         | 
| 178 | 
            +
                    new_comment.save!
         | 
| 179 | 
            +
                  end
         | 
| 180 | 
            +
             | 
| 181 | 
            +
                  it "does not clear the current user's comment" do
         | 
| 182 | 
            +
                    expect(page).to have_content(new_comment.body.values.first, wait: 20)
         | 
| 183 | 
            +
                    expect(page).to have_field(
         | 
| 184 | 
            +
                      "add-comment-#{commentable.commentable_type.demodulize}-#{commentable.id}",
         | 
| 185 | 
            +
                      with: "This is a new comment"
         | 
| 186 | 
            +
                    )
         | 
| 187 | 
            +
                  end
         | 
| 188 | 
            +
             | 
| 189 | 
            +
                  context "when inside a thread reply form" do
         | 
| 190 | 
            +
                    let(:thread) { comments.first }
         | 
| 191 | 
            +
                    let(:new_reply_body) { "Hey, I just jumped inside the thread!" }
         | 
| 192 | 
            +
                    let(:new_reply) { build(:comment, commentable: thread, root_commentable: commentable, body: new_reply_body) }
         | 
| 193 | 
            +
             | 
| 194 | 
            +
                    before do
         | 
| 195 | 
            +
                      within "#comment_#{thread.id}" do
         | 
| 196 | 
            +
                        click_button "Reply"
         | 
| 197 | 
            +
             | 
| 198 | 
            +
                        within ".add-comment form" do
         | 
| 199 | 
            +
                          fill_in "add-comment-#{thread.commentable_type.demodulize}-#{thread.id}", with: "This is a new reply"
         | 
| 200 | 
            +
                        end
         | 
| 201 | 
            +
                      end
         | 
| 202 | 
            +
                      new_reply.save!
         | 
| 203 | 
            +
                    end
         | 
| 204 | 
            +
             | 
| 205 | 
            +
                    it "does not clear the current user's comment" do
         | 
| 206 | 
            +
                      expect(page).to have_content(new_reply.body.values.first, wait: 20)
         | 
| 207 | 
            +
                      expect(page).to have_field(
         | 
| 208 | 
            +
                        "add-comment-#{commentable.commentable_type.demodulize}-#{commentable.id}",
         | 
| 209 | 
            +
                        with: "This is a new comment"
         | 
| 210 | 
            +
                      )
         | 
| 211 | 
            +
                      expect(page).to have_field(
         | 
| 212 | 
            +
                        "add-comment-#{thread.commentable_type.demodulize}-#{thread.id}",
         | 
| 213 | 
            +
                        with: "This is a new reply"
         | 
| 214 | 
            +
                      )
         | 
| 215 | 
            +
                    end
         | 
| 216 | 
            +
                  end
         | 
| 217 | 
            +
                end
         | 
| 218 | 
            +
             | 
| 169 219 | 
             
                context "when the user has verified organizations" do
         | 
| 170 220 | 
             
                  let(:user_group) { create(:user_group, :verified) }
         | 
| 171 221 |  | 
    
        data/lib/decidim/core/version.rb
    CHANGED
    
    
| @@ -55,12 +55,8 @@ namespace :decidim do | |
| 55 55 | 
             
                end
         | 
| 56 56 |  | 
| 57 57 | 
             
                def install_decidim_npm
         | 
| 58 | 
            -
                  decidim_npm_packages.each do |type,  | 
| 59 | 
            -
                     | 
| 60 | 
            -
                      system! "npm i -D #{package}"
         | 
| 61 | 
            -
                    else
         | 
| 62 | 
            -
                      system! "npm i #{package}"
         | 
| 63 | 
            -
                    end
         | 
| 58 | 
            +
                  decidim_npm_packages.each do |type, packages|
         | 
| 59 | 
            +
                    system! "npm i --save-#{type} #{packages.join(" ")}"
         | 
| 64 60 | 
             
                  end
         | 
| 65 61 | 
             
                end
         | 
| 66 62 |  | 
| @@ -73,32 +69,55 @@ namespace :decidim do | |
| 73 69 | 
             
                end
         | 
| 74 70 |  | 
| 75 71 | 
             
                def decidim_npm_packages
         | 
| 72 | 
            +
                  gem_path = unreleased_gem_path
         | 
| 73 | 
            +
             | 
| 74 | 
            +
                  if gem_path
         | 
| 75 | 
            +
                    package_spec = "./packages/%s"
         | 
| 76 | 
            +
             | 
| 77 | 
            +
                    # The packages folder needs to be copied to the application folder
         | 
| 78 | 
            +
                    # because the linked dependencies are not installed when packages
         | 
| 79 | 
            +
                    # are installed using file references outside the application root
         | 
| 80 | 
            +
                    # where the `package.json` is located at. For more information, see:
         | 
| 81 | 
            +
                    # https://github.com/npm/cli/issues/2339
         | 
| 82 | 
            +
                    FileUtils.rm_rf(rails_app_path.join("packages"))
         | 
| 83 | 
            +
                    FileUtils.cp_r(gem_path.join("packages"), rails_app_path)
         | 
| 84 | 
            +
                  else
         | 
| 85 | 
            +
                    package_spec = "@decidim/%s@~#{Decidim::GemManager.semver_friendly_version(decidim_gemspec.version.to_s)}"
         | 
| 86 | 
            +
                  end
         | 
| 87 | 
            +
             | 
| 88 | 
            +
                  local_npm_dependencies.transform_values { |names| names.map { |name| format(package_spec, name) } }
         | 
| 89 | 
            +
                end
         | 
| 90 | 
            +
             | 
| 91 | 
            +
                def unreleased_gem_path
         | 
| 76 92 | 
             
                  if decidim_gemspec.source.is_a?(Bundler::Source::Rubygems)
         | 
| 77 | 
            -
                    if released_version?
         | 
| 78 | 
            -
             | 
| 79 | 
            -
             | 
| 80 | 
            -
                        prod: "@decidim/all@~#{Decidim::GemManager.semver_friendly_version(decidim_gemspec.version.to_s)}"
         | 
| 81 | 
            -
                      }
         | 
| 82 | 
            -
                    else
         | 
| 83 | 
            -
                      gem_path = Pathname(decidim_gemspec.full_gem_path)
         | 
| 84 | 
            -
                    end
         | 
| 93 | 
            +
                    return if released_version?
         | 
| 94 | 
            +
             | 
| 95 | 
            +
                    gem_path = Pathname(decidim_gemspec.full_gem_path)
         | 
| 85 96 | 
             
                  else
         | 
| 86 97 | 
             
                    gem_path = decidim_gemspec.source.path
         | 
| 87 98 | 
             
                    gem_path = Pathname(ENV["BUNDLE_GEMFILE"]).dirname.join(gem_path) if gem_path.relative?
         | 
| 88 99 | 
             
                  end
         | 
| 89 100 |  | 
| 90 | 
            -
                   | 
| 91 | 
            -
             | 
| 92 | 
            -
             | 
| 93 | 
            -
             | 
| 94 | 
            -
                   | 
| 95 | 
            -
             | 
| 96 | 
            -
             | 
| 101 | 
            +
                  gem_path
         | 
| 102 | 
            +
                end
         | 
| 103 | 
            +
             | 
| 104 | 
            +
                def local_npm_dependencies
         | 
| 105 | 
            +
                  @local_npm_dependencies ||= begin
         | 
| 106 | 
            +
                    package_json = JSON.parse(File.read(decidim_path.join("package.json")))
         | 
| 107 | 
            +
             | 
| 108 | 
            +
                    {
         | 
| 109 | 
            +
                      prod: local_npm_dependencies_list(package_json["dependencies"]),
         | 
| 110 | 
            +
                      dev: local_npm_dependencies_list(package_json["devDependencies"])
         | 
| 111 | 
            +
                    }.freeze
         | 
| 112 | 
            +
                  end
         | 
| 113 | 
            +
                end
         | 
| 114 | 
            +
             | 
| 115 | 
            +
                def local_npm_dependencies_list(deps)
         | 
| 116 | 
            +
                  return [] unless deps
         | 
| 97 117 |  | 
| 98 | 
            -
                   | 
| 99 | 
            -
             | 
| 100 | 
            -
             | 
| 101 | 
            -
                  }
         | 
| 118 | 
            +
                  deps.values
         | 
| 119 | 
            +
                      .select { |ref| ref.starts_with?("file:packages/") }
         | 
| 120 | 
            +
                      .map { |ref| ref.delete_prefix("file:packages/") }
         | 
| 102 121 | 
             
                end
         | 
| 103 122 |  | 
| 104 123 | 
             
                def decidim_path
         | 
| @@ -151,8 +170,8 @@ namespace :decidim do | |
| 151 170 | 
             
                  File.write(file, contents)
         | 
| 152 171 | 
             
                end
         | 
| 153 172 |  | 
| 154 | 
            -
                def system!( | 
| 155 | 
            -
                  system( | 
| 173 | 
            +
                def system!(command)
         | 
| 174 | 
            +
                  system("cd #{rails_app_path} && #{command}") || abort("\n== Command #{command} failed ==")
         | 
| 156 175 | 
             
                end
         | 
| 157 176 | 
             
              end
         | 
| 158 177 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: decidim-core
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.25.0. | 
| 4 | 
            +
              version: 0.25.0.rc3
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Josep Jaume Rey Peroy
         | 
| @@ -10,7 +10,7 @@ authors: | |
| 10 10 | 
             
            autorequire:
         | 
| 11 11 | 
             
            bindir: bin
         | 
| 12 12 | 
             
            cert_chain: []
         | 
| 13 | 
            -
            date: 2021-09- | 
| 13 | 
            +
            date: 2021-09-17 00:00:00.000000000 Z
         | 
| 14 14 | 
             
            dependencies:
         | 
| 15 15 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 16 16 | 
             
              name: active_link_to
         | 
| @@ -790,28 +790,28 @@ dependencies: | |
| 790 790 | 
             
                requirements:
         | 
| 791 791 | 
             
                - - '='
         | 
| 792 792 | 
             
                  - !ruby/object:Gem::Version
         | 
| 793 | 
            -
                    version: 0.25.0. | 
| 793 | 
            +
                    version: 0.25.0.rc3
         | 
| 794 794 | 
             
              type: :runtime
         | 
| 795 795 | 
             
              prerelease: false
         | 
| 796 796 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 797 797 | 
             
                requirements:
         | 
| 798 798 | 
             
                - - '='
         | 
| 799 799 | 
             
                  - !ruby/object:Gem::Version
         | 
| 800 | 
            -
                    version: 0.25.0. | 
| 800 | 
            +
                    version: 0.25.0.rc3
         | 
| 801 801 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 802 802 | 
             
              name: decidim-dev
         | 
| 803 803 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 804 804 | 
             
                requirements:
         | 
| 805 805 | 
             
                - - '='
         | 
| 806 806 | 
             
                  - !ruby/object:Gem::Version
         | 
| 807 | 
            -
                    version: 0.25.0. | 
| 807 | 
            +
                    version: 0.25.0.rc3
         | 
| 808 808 | 
             
              type: :development
         | 
| 809 809 | 
             
              prerelease: false
         | 
| 810 810 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 811 811 | 
             
                requirements:
         | 
| 812 812 | 
             
                - - '='
         | 
| 813 813 | 
             
                  - !ruby/object:Gem::Version
         | 
| 814 | 
            -
                    version: 0.25.0. | 
| 814 | 
            +
                    version: 0.25.0.rc3
         | 
| 815 815 | 
             
            description: Adds core features so other engines can hook into the framework.
         | 
| 816 816 | 
             
            email:
         | 
| 817 817 | 
             
            - josepjaume@gmail.com
         |