<commit_before># Encoding: utf-8
require 'legacy/migration'
require 'legacy/tables'

module Legacy
  # Realiza la migración de todas las tablas e indica los resultados en la
  # consola
  def self.seed_legacy_databases
    LEGACY_TABLES.each do |tabla|
      begin
        puts "\n---"
        puts "Migrando: #{tabla[:legacy]}\n"
        migracion = Migration.new(tabla)
        migracion.output = :dots

        puts "Datos a migrar: #{migracion.legacy_table.record_count} / #{migracion.model.count}"

        unless re_seedable? migracion.model
          if migracion.legacy_table.record_count <= migracion.model.count + 2 and migracion.model.count > 0
            raise "tabla ya migrada y sin registros nuevos (y además no es reseedeable)"
          else
            puts "borre primero los registros: #{migracion.model.count} registros (porque no es re-seedeable)"
            raise "ahora no borro registros, mejor borrar a mano :)"
          end
        end

        migracion.run
        puts "\n---\n#{tabla[:legacy]} migrado correctamente"
      rescue
        puts "\n---\n#{tabla[:legacy]} #{$!}"
      end
    end
  end

  def self.re_seedable?(model)
    legacy_id = model.const_get(:LEGACY_CONSTRAINTS) rescue nil
  end
end
<commit_msg>FIX: legacy no migra tablas vacias.<commit_after># Encoding: utf-8
require 'legacy/migration'
require 'legacy/tables'

module Legacy
  # Realiza la migración de todas las tablas e indica los resultados en la
  # consola
  def self.seed_legacy_databases
    LEGACY_TABLES.each do |tabla|
      begin
        puts "\n---"
        puts "Migrando: #{tabla[:legacy]}\n"
        migracion = Migration.new(tabla)
        migracion.output = :dots

        puts "Datos a migrar: #{migracion.legacy_table.record_count} / #{migracion.model.count}"

        unless re_seedable? migracion.model
          if migracion.model.count == 0
            puts "Cargando los datos por primera vez"
          elsif migracion.legacy_table.record_count <= migracion.model.count + 2 and migracion.model.count > 0
            raise "Tabla ya migrada y sin registros nuevos (y además no es reseedeable)"
          else
            puts "Borre primero los registros: #{migracion.model.count} registros (porque no es re-seedeable)"
            raise "ahora no borro registros, mejor borrar a mano :)"
          end
        end

        migracion.run
        puts "\n---\n#{tabla[:legacy]} migrado correctamente"
      rescue
        puts "\n---\n#{tabla[:legacy]} #{$!}"
      end
    end
  end

  def self.re_seedable?(model)
    legacy_id = model.const_get(:LEGACY_CONSTRAINTS) rescue nil
  end
end

{'fraction_non_alphanumeric': 0.10064811284788411, 'fraction_numerical': 0.002668699961875715, 'mean_word_length': 2.5080213903743314, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4687503', 'n_tokens_mistral': 872, 'n_tokens_neox': 895, 'n_words': 233}