<commit_before>module.exports = function(grunt) {
  grunt.initConfig({

    clean: ["dist"],

		copy: {
      copy_untouched_resources_to_dist: {
        files: [
          {
            expand: true,
            cwd: 'src',
            src: [
							'**/*',
							'!**/*.{png,jpg,gif}',
							'!js/*.js',
							'js/*.min.js'
						],
            dest: 'dist'
          }
        ]
      }
    },
    
 
    
   htmlmin: {
      options: {
        removeComments: true,
        collapseWhitespace: true,
        preserveLineBreaks: true,
      },
      all: {
        files: [{
					expand: true,                  // Enable dynamic expansion
					cwd: 'src/',                   // Src matches are relative to this path
					src: ['**/*.html'],   // Actual patterns to match
					dest: 'dist/'
        }]
      },
    },
		uglify: {
			unminified_js: {
				files: [{
					expand: true,
					cwd: 'src/',
					src: [
						'js/*.js',
						'!js/*.min.js'
					],
					dest: 'dist/'
				}]
			}
		},
		watch: {
			scripts: {
				files: ['src/*'],
				tasks: ['default']
			}
		}
  });

  grunt.loadNpmTasks('grunt-contrib-clean');
  grunt.loadNpmTasks('grunt-contrib-copy');
  grunt.loadNpmTasks('grunt-contrib-htmlmin');
  grunt.loadNpmTasks('grunt-newer');
  grunt.loadNpmTasks('grunt-contrib-uglify');
  grunt.loadNpmTasks('grunt-contrib-watch');

  grunt.registerTask('production', ['clean', 'copy', 'htmlmin', 'uglify']);
  grunt.registerTask('default', ['newer:copy', 'htmlmin', 'newer:uglify']);

};<commit_msg>htmlmin<commit_after>module.exports = function(grunt) {
  grunt.initConfig({

    clean: ["dist"],

		copy: {
      copy_untouched_resources_to_dist: {
        files: [
          {
            expand: true,
            cwd: 'src',
            src: [
							'**/*',
							'!**/*.{png,jpg,gif}',
							'!js/*.js',
							'js/*.min.js'
						],
            dest: 'dist'
          }
        ]
      }
    },
    
 
    
   htmlmin: {
      options: {
        removeComments: true,
        collapseWhitespace: true
      },
      all: {
        files: [{
					expand: true,                  // Enable dynamic expansion
					cwd: 'src/',                   // Src matches are relative to this path
					src: ['**/*.{html}'],   // Actual patterns to match
					dest: 'dist/'
        }]
      },
    },
    
    imagemin: {                          // Task
			dynamic: {
				files: [{
					expand: true,                  // Enable dynamic expansion
					cwd: 'src/',                   // Src matches are relative to this path
					src: ['**/*.{png,jpg,gif}'],   // Actual patterns to match
					dest: 'dist/'                  // Destination path prefix
				}]
			}
    },
		uglify: {
			unminified_js: {
				files: [{
					expand: true,
					cwd: 'src/',
					src: [
						'js/*.js',
						'!js/*.min.js'
					],
					dest: 'dist/'
				}]
			}
		},
		watch: {
			scripts: {
				files: ['src/*'],
				tasks: ['default']
			}
		}
  });

  grunt.loadNpmTasks('grunt-contrib-clean');
  grunt.loadNpmTasks('grunt-contrib-copy');
  grunt.loadNpmTasks('grunt-contrib-htmlmin');
  grunt.loadNpmTasks('grunt-contrib-imagemin');
	grunt.loadNpmTasks('grunt-newer');
	grunt.loadNpmTasks('grunt-contrib-uglify');
	grunt.loadNpmTasks('grunt-contrib-watch');

  grunt.registerTask('production', ['clean', 'copy', 'htmlmin', 'imagemin', 'uglify']);
  grunt.registerTask('default', ['newer:copy', 'newer:htmlmin' , 'newer:imagemin', 'newer:uglify']);

};
{'fraction_non_alphanumeric': 0.17836426914153133, 'fraction_numerical': 0.0, 'mean_word_length': 1.7221783741120757, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, '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': '6759753', 'n_tokens_mistral': 1437, 'n_tokens_neox': 1183, 'n_words': 196}