datasketches 0.4.0 → 0.4.2
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 +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/datasketches/version.rb +1 -1
- data/vendor/datasketches-cpp/density/include/density_sketch_impl.hpp +1 -1
- data/vendor/datasketches-cpp/kll/include/kll_helper_impl.hpp +4 -2
- data/vendor/datasketches-cpp/sampling/include/ebpps_sample_impl.hpp +5 -1
- data/vendor/datasketches-cpp/version.cfg.in +1 -1
- metadata +3 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 9131edb6c019db8cd0dbb98aaf1321ba213efe5911ea17dd37f4e2a6cd8e7125
         | 
| 4 | 
            +
              data.tar.gz: dc60612514895814bb7e920d8e66029b10abb820a6a6617e6426cc725482d6e2
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: b030673f22e3c02c7a1805a9c8378e305b4878c18c4c92c3cdccaa54ea2ea9a87871b6a858563a02be510f6371bfe1c34e76386ccad975da05a6bd09071c5ee9
         | 
| 7 | 
            +
              data.tar.gz: 11b1cbd76b5e47547b54ef39c195a2d9caa2a1a2a7ec3b8ed33be87b0e98adfa6cbef1ac8e6f5af6d4b57390731b10949f13620b4f916e15b7c73a449dfdfaa5
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    
    
        data/lib/datasketches/version.rb
    CHANGED
    
    
| @@ -144,7 +144,7 @@ void density_sketch<T, K, A>::compact_level(unsigned height) { | |
| 144 144 | 
             
              auto& level = levels_[height];
         | 
| 145 145 | 
             
              std::vector<bool> bits(level.size());
         | 
| 146 146 | 
             
              bits[0] = random_utils::random_bit();
         | 
| 147 | 
            -
              std:: | 
| 147 | 
            +
              std::shuffle(level.begin(), level.end(), random_utils::rand);
         | 
| 148 148 | 
             
              for (unsigned i = 1; i < level.size(); ++i) {
         | 
| 149 149 | 
             
                T delta = 0;
         | 
| 150 150 | 
             
                for (unsigned j = 0; j < i; ++j) {
         | 
| @@ -230,7 +230,8 @@ kll_helper::compress_result kll_helper::general_compress(uint16_t k, uint8_t m, | |
| 230 230 | 
             
                  // move level over as is
         | 
| 231 231 | 
             
                  // make sure we are not moving data upwards
         | 
| 232 232 | 
             
                  if (raw_beg < out_levels[current_level]) throw std::logic_error("wrong move");
         | 
| 233 | 
            -
                   | 
| 233 | 
            +
                  if (raw_beg != out_levels[current_level])
         | 
| 234 | 
            +
                    std::move(items + raw_beg, items + raw_lim, items + out_levels[current_level]);
         | 
| 234 235 | 
             
                  out_levels[current_level + 1] = out_levels[current_level] + raw_pop;
         | 
| 235 236 | 
             
                } else {
         | 
| 236 237 | 
             
                  // The sketch is too full AND this level is too full, so we compact it
         | 
| @@ -243,7 +244,8 @@ kll_helper::compress_result kll_helper::general_compress(uint16_t k, uint8_t m, | |
| 243 244 | 
             
                  const auto half_adj_pop = adj_pop / 2;
         | 
| 244 245 |  | 
| 245 246 | 
             
                  if (odd_pop) { // move one guy over
         | 
| 246 | 
            -
                     | 
| 247 | 
            +
                    if (out_levels[current_level] != raw_beg)
         | 
| 248 | 
            +
                      items[out_levels[current_level]] = std::move(items[raw_beg]);
         | 
| 247 249 | 
             
                    out_levels[current_level + 1] = out_levels[current_level] + 1;
         | 
| 248 250 | 
             
                  } else { // even number of items
         | 
| 249 251 | 
             
                    out_levels[current_level + 1] = out_levels[current_level];
         | 
| @@ -178,7 +178,11 @@ string<A> ebpps_sample<T ,A>::to_string() const { | |
| 178 178 | 
             
              uint32_t idx = 0;
         | 
| 179 179 | 
             
              for (const T& item : data_)
         | 
| 180 180 | 
             
                oss << "\t" << idx++ << ":\t" << item << std::endl;
         | 
| 181 | 
            -
              oss << "   partial: " | 
| 181 | 
            +
              oss << "   partial: ";
         | 
| 182 | 
            +
              if (bool(partial_item_))
         | 
| 183 | 
            +
                oss << (*partial_item_) << std::endl;
         | 
| 184 | 
            +
              else
         | 
| 185 | 
            +
                oss << "NULL" << std::endl;
         | 
| 182 186 |  | 
| 183 187 | 
             
              return oss.str();
         | 
| 184 188 | 
             
            }
         | 
| @@ -1 +1 @@ | |
| 1 | 
            -
            5.0. | 
| 1 | 
            +
            5.0.2
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: datasketches
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.4. | 
| 4 | 
            +
              version: 0.4.2
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Andrew Kane
         | 
| 8 8 | 
             
            autorequire:
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date:  | 
| 11 | 
            +
            date: 2024-01-13 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: rice
         | 
| @@ -324,7 +324,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 324 324 | 
             
                - !ruby/object:Gem::Version
         | 
| 325 325 | 
             
                  version: '0'
         | 
| 326 326 | 
             
            requirements: []
         | 
| 327 | 
            -
            rubygems_version: 3. | 
| 327 | 
            +
            rubygems_version: 3.5.3
         | 
| 328 328 | 
             
            signing_key:
         | 
| 329 329 | 
             
            specification_version: 4
         | 
| 330 330 | 
             
            summary: Sketch data structures for Ruby
         |