|
| 1 | +#!/usr/bin/env python3 |
| 2 | +"""Create additional 150 issues to reach 250 total""" |
| 3 | + |
| 4 | +import subprocess |
| 5 | +import time |
| 6 | + |
| 7 | +# Additional beginner issues (60 more) |
| 8 | +BEGINNER_MORE = [ |
| 9 | + ("Build Factorial Iterative Solution", "101_factorial_iterative.py", "Calculate factorial iteratively"), |
| 10 | + ("Build Number Pattern Printer", "102_number_patterns.py", "Print various number patterns"), |
| 11 | + ("Build Star Pattern Generator", "103_star_patterns.py", "Print star patterns"), |
| 12 | + ("Build Multiplication Table Generator", "104_multiplication_table.py", "Generate multiplication tables"), |
| 13 | + ("Build Armstrong Number Checker", "105_armstrong_checker.py", "Check if number is Armstrong"), |
| 14 | + ("Build Perfect Number Checker", "106_perfect_number.py", "Check if number is perfect"), |
| 15 | + ("Build Strong Number Checker", "107_strong_number.py", "Check if number is strong"), |
| 16 | + ("Build Automorphic Number Checker", "108_automorphic_number.py", "Check automorphic numbers"), |
| 17 | + ("Build Neon Number Checker", "109_neon_number.py", "Check neon numbers"), |
| 18 | + ("Build Harshad Number Checker", "110_harshad_number.py", "Check Harshad numbers"), |
| 19 | + ("Build Binary to Decimal Converter", "111_binary_decimal.py", "Convert binary to decimal"), |
| 20 | + ("Build Decimal to Binary Converter", "112_decimal_binary.py", "Convert decimal to binary"), |
| 21 | + ("Build Octal to Decimal Converter", "113_octal_decimal.py", "Convert octal to decimal"), |
| 22 | + ("Build Hexadecimal to Decimal Converter", "114_hex_decimal.py", "Convert hex to decimal"), |
| 23 | + ("Build Roman Numeral Converter", "115_roman_converter.py", "Convert to/from Roman numerals"), |
| 24 | + ("Build ASCII Value Finder", "116_ascii_finder.py", "Find ASCII values"), |
| 25 | + ("Build Character Type Checker", "117_char_type.py", "Check character types"), |
| 26 | + ("Build String Length Calculator", "118_string_length.py", "Calculate string length"), |
| 27 | + ("Build Substring Counter", "119_substring_counter.py", "Count substring occurrences"), |
| 28 | + ("Build String Comparator", "120_string_compare.py", "Compare two strings"), |
| 29 | + ("Build List Sum Calculator", "121_list_sum.py", "Calculate sum of list elements"), |
| 30 | + ("Build List Product Calculator", "122_list_product.py", "Calculate product of list"), |
| 31 | + ("Build List Average Calculator", "123_list_average.py", "Calculate average of list"), |
| 32 | + ("Build List Max Min Finder", "124_list_max_min.py", "Find max and min in list"), |
| 33 | + ("Build List Second Largest", "125_second_largest.py", "Find second largest in list"), |
| 34 | + ("Build Tuple Creator", "126_tuple_creator.py", "Create and manipulate tuples"), |
| 35 | + ("Build Tuple to List Converter", "127_tuple_list_convert.py", "Convert between tuple and list"), |
| 36 | + ("Build Set Creator", "128_set_creator.py", "Create and manipulate sets"), |
| 37 | + ("Build Dictionary Creator", "129_dict_creator.py", "Create and manipulate dictionaries"), |
| 38 | + ("Build Dictionary Merger", "130_dict_merger.py", "Merge two dictionaries"), |
| 39 | + ("Build Simple Calculator App", "131_calculator_app.py", "Build calculator with all operations"), |
| 40 | + ("Build Area Calculator Suite", "132_area_calculator.py", "Calculate areas of shapes"), |
| 41 | + ("Build Volume Calculator Suite", "133_volume_calculator.py", "Calculate volumes of solids"), |
| 42 | + ("Build Time Converter", "134_time_converter.py", "Convert time units"), |
| 43 | + ("Build Distance Converter", "135_distance_converter.py", "Convert distance units"), |
| 44 | + ("Build Weight Converter", "136_weight_converter.py", "Convert weight units"), |
| 45 | + ("Build Speed Converter", "137_speed_converter.py", "Convert speed units"), |
| 46 | + ("Build Data Size Converter", "138_data_size_converter.py", "Convert data sizes"), |
| 47 | + ("Build Angle Converter", "139_angle_converter.py", "Convert angle units"), |
| 48 | + ("Build Pressure Converter", "140_pressure_converter.py", "Convert pressure units"), |
| 49 | + ("Build Energy Converter", "141_energy_converter.py", "Convert energy units"), |
| 50 | + ("Build Power Converter", "142_power_converter.py", "Convert power units"), |
| 51 | + ("Build Frequency Converter", "143_frequency_converter.py", "Convert frequency units"), |
| 52 | + ("Build Build Simple Quiz Game", "144_quiz_game.py", "Build quiz game with scoring"), |
| 53 | + ("Build Number Guessing Game", "145_guessing_game.py", "Build number guessing game"), |
| 54 | + ("Build Rock Paper Scissors Game", "146_rps_game.py", "Build rock paper scissors"), |
| 55 | + ("Build Dice Rolling Simulator", "147_dice_roller.py", "Simulate dice rolling"), |
| 56 | + ("Build Coin Flip Simulator", "148_coin_flip.py", "Simulate coin flipping"), |
| 57 | + ("Build Random Password Generator", "149_password_generator.py", "Generate random passwords"), |
| 58 | + ("Build Random Quote Generator", "150_quote_generator.py", "Display random quotes"), |
| 59 | + ("Build Todo List Manager", "151_todo_list.py", "Manage todo list"), |
| 60 | + ("Build Contact Book", "152_contact_book.py", "Manage contacts"), |
| 61 | + ("Build Expense Tracker Basic", "153_expense_tracker.py", "Track expenses"), |
| 62 | + ("Build Habit Tracker", "154_habit_tracker.py", "Track daily habits"), |
| 63 | + ("Build Water Intake Tracker", "155_water_tracker.py", "Track water intake"), |
| 64 | + ("Build Calorie Counter", "156_calorie_counter.py", "Count daily calories"), |
| 65 | + ("Build BMI Calculator", "157_bmi_calculator.py", "Calculate BMI"), |
| 66 | + ("Build Age Calculator", "158_age_calculator.py", "Calculate age from birthdate"), |
| 67 | + ("Build Days Between Dates", "159_days_between.py", "Calculate days between dates"), |
| 68 | + ("Build Countdown Timer", "160_countdown_timer.py", "Create countdown timer"), |
| 69 | +] |
| 70 | + |
| 71 | +# Additional intermediate issues (50 more) |
| 72 | +INTERMEDIATE_MORE = [ |
| 73 | + ("Build File Search Tool", "161_file_search.py", "Search files by name"), |
| 74 | + ("Build File Size Analyzer", "162_file_size.py", "Analyze file sizes"), |
| 75 | + ("Build Duplicate File Finder", "163_duplicate_finder.py", "Find duplicate files"), |
| 76 | + ("Build File Encryption Tool", "164_file_encrypt.py", "Encrypt files"), |
| 77 | + ("Build File Decryption Tool", "165_file_decrypt.py", "Decrypt files"), |
| 78 | + ("Build Text File Editor", "166_text_editor.py", "Edit text files"), |
| 79 | + ("Build Markdown to HTML Converter", "167_markdown_html.py", "Convert markdown to HTML"), |
| 80 | + ("Build JSON to CSV Converter", "168_json_csv.py", "Convert JSON to CSV"), |
| 81 | + ("Build CSV to JSON Converter", "169_csv_json.py", "Convert CSV to JSON"), |
| 82 | + ("Build XML Parser", "170_xml_parser.py", "Parse XML files"), |
| 83 | + ("Build Class Designer", "171_class_designer.py", "Design classes with OOP"), |
| 84 | + ("Build Inheritance Demo", "172_inheritance_demo.py", "Demonstrate inheritance"), |
| 85 | + ("Build Polymorphism Demo", "173_polymorphism_demo.py", "Demonstrate polymorphism"), |
| 86 | + ("Build Encapsulation Demo", "174_encapsulation_demo.py", "Demonstrate encapsulation"), |
| 87 | + ("Build Abstraction Demo", "175_abstraction_demo.py", "Demonstrate abstraction"), |
| 88 | + ("Build Magic Methods Demo", "176_magic_methods.py", "Demonstrate magic methods"), |
| 89 | + ("Build Property Decorator Demo", "177_property_decorator.py", "Use property decorators"), |
| 90 | + ("Build Static Method Demo", "178_static_method.py", "Use static methods"), |
| 91 | + ("Build Class Method Demo", "179_class_method.py", "Use class methods"), |
| 92 | + ("Build Abstract Class Demo", "180_abstract_class.py", "Create abstract classes"), |
| 93 | + ("Build API Response Parser", "181_api_parser.py", "Parse API responses"), |
| 94 | + ("Build HTTP Status Checker", "182_status_checker.py", "Check HTTP status codes"), |
| 95 | + ("Build URL Validator", "183_url_validator.py", "Validate URLs"), |
| 96 | + ("Build Email Validator", "184_email_validator.py", "Validate email addresses"), |
| 97 | + ("Build Phone Number Validator", "185_phone_validator.py", "Validate phone numbers"), |
| 98 | + ("Build IP Address Tool", "186_ip_tool.py", "Work with IP addresses"), |
| 99 | + ("Build Port Scanner Basic", "187_port_scanner.py", "Scan open ports"), |
| 100 | + ("Build Network Speed Test", "188_speed_test.py", "Test network speed"), |
| 101 | + ("Build Ping Tool", "189_ping_tool.py", "Ping servers"), |
| 102 | + ("Build DNS Lookup Tool", "190_dns_lookup.py", "Lookup DNS records"), |
| 103 | + ("Build Data Cleaning Tool", "191_data_cleaning.py", "Clean messy data"), |
| 104 | + ("Build Data Transformation Tool", "192_data_transform.py", "Transform data"), |
| 105 | + ("Build Data Visualization Basic", "193_data_viz.py", "Visualize data"), |
| 106 | + ("Build Chart Generator", "194_chart_generator.py", "Generate charts"), |
| 107 | + ("Build Graph Plotter", "195_graph_plotter.py", "Plot graphs"), |
| 108 | + ("Build Statistics Calculator", "196_statistics.py", "Calculate statistics"), |
| 109 | + ("Build Correlation Calculator", "197_correlation.py", "Calculate correlations"), |
| 110 | + ("Build Regression Calculator", "198_regression.py", "Calculate regression"), |
| 111 | + ("Build Probability Calculator", "199_probability.py", "Calculate probabilities"), |
| 112 | + ("Build Permutation Calculator", "200_permutation.py", "Calculate permutations"), |
| 113 | + ("Build Combination Calculator", "201_combination.py", "Calculate combinations"), |
| 114 | + ("Build Matrix Operations", "202_matrix_ops.py", "Perform matrix operations"), |
| 115 | + ("Build Vector Operations", "203_vector_ops.py", "Perform vector operations"), |
| 116 | + ("Build Linear Equation Solver", "204_linear_solver.py", "Solve linear equations"), |
| 117 | + ("Build Quadratic Equation Solver", "205_quadratic_solver.py", "Solve quadratic equations"), |
| 118 | + ("Build Polynomial Evaluator", "206_polynomial.py", "Evaluate polynomials"), |
| 119 | + ("Build Derivative Calculator", "207_derivative.py", "Calculate derivatives"), |
| 120 | + ("Build Integral Calculator", "208_integral.py", "Calculate integrals"), |
| 121 | + ("Build Unit Test Framework", "209_test_framework.py", "Create test framework"), |
| 122 | + ("Build Mock Object Creator", "210_mock_creator.py", "Create mock objects"), |
| 123 | +] |
| 124 | + |
| 125 | +# Additional advanced issues (40 more) |
| 126 | +ADVANCED_MORE = [ |
| 127 | + ("Build REST API with Authentication", "211_api_auth.py", "Build authenticated API"), |
| 128 | + ("Build GraphQL API Server", "212_graphql_api.py", "Build GraphQL API"), |
| 129 | + ("Build WebSocket Server", "213_websocket_server.py", "Build WebSocket server"), |
| 130 | + ("Build Real-time Chat Server", "214_chat_server.py", "Build chat server"), |
| 131 | + ("Build File Upload Server", "215_upload_server.py", "Build file upload server"), |
| 132 | + ("Build Image Processing Tool", "216_image_process.py", "Process images"), |
| 133 | + ("Build PDF Generator", "217_pdf_generator.py", "Generate PDFs"), |
| 134 | + ("Build PDF Parser", "218_pdf_parser.py", "Parse PDFs"), |
| 135 | + ("Build Excel File Handler", "219_excel_handler.py", "Handle Excel files"), |
| 136 | + ("Build Word Document Handler", "220_word_handler.py", "Handle Word docs"), |
| 137 | + ("Build ORM Implementation", "221_orm_impl.py", "Implement ORM"), |
| 138 | + ("Build Connection Pool Manager", "222_connection_pool.py", "Manage connections"), |
| 139 | + ("Build Transaction Manager", "223_transaction_mgr.py", "Manage transactions"), |
| 140 | + ("Build Database Migration System", "224_migration_system.py", "Migrate databases"), |
| 141 | + ("Build Database Seeder", "225_db_seeder.py", "Seed databases"), |
| 142 | + ("Build Email Sender Service", "226_email_sender.py", "Send emails"), |
| 143 | + ("Build SMS Sender Service", "227_sms_sender.py", "Send SMS"), |
| 144 | + ("Build Notification Service", "228_notification.py", "Send notifications"), |
| 145 | + ("Build Task Scheduler", "229_task_scheduler.py", "Schedule tasks"), |
| 146 | + ("Build Cron Job Manager", "230_cron_manager.py", "Manage cron jobs"), |
| 147 | + ("Build Process Monitor", "231_process_monitor.py", "Monitor processes"), |
| 148 | + ("Build Resource Monitor", "232_resource_monitor.py", "Monitor resources"), |
| 149 | + ("Build Log Aggregator", "233_log_aggregator.py", "Aggregate logs"), |
| 150 | + ("Build Error Tracker", "234_error_tracker.py", "Track errors"), |
| 151 | + ("Build Health Check Service", "235_health_check.py", "Check service health"), |
| 152 | + ("Build Metrics Collector", "236_metrics_collector.py", "Collect metrics"), |
| 153 | + ("Build Alert System", "237_alert_system.py", "Send alerts"), |
| 154 | + ("Build Dashboard Generator", "238_dashboard.py", "Generate dashboards"), |
| 155 | + ("Build Report Generator Advanced", "239_report_gen.py", "Generate reports"), |
| 156 | + ("Build Data Pipeline", "240_data_pipeline.py", "Build data pipeline"), |
| 157 | + ("Build ETL Process", "241_etl_process.py", "Build ETL process"), |
| 158 | + ("Build Data Warehouse Tool", "242_data_warehouse.py", "Build data warehouse"), |
| 159 | + ("Build API Gateway Basic", "243_api_gateway.py", "Build API gateway"), |
| 160 | + ("Build Service Discovery", "244_service_discovery.py", "Discover services"), |
| 161 | + ("Build Config Manager", "245_config_manager.py", "Manage configurations"), |
| 162 | + ("Build Secret Manager", "246_secret_manager.py", "Manage secrets"), |
| 163 | + ("Build Feature Flag System", "247_feature_flags.py", "Manage feature flags"), |
| 164 | + ("Build A/B Testing Framework", "248_ab_testing.py", "Run A/B tests"), |
| 165 | + ("Build Analytics Tracker", "249_analytics.py", "Track analytics"), |
| 166 | + ("Build Audit Logger", "250_audit_logger.py", "Log audit trails"), |
| 167 | +] |
| 168 | + |
| 169 | +def create_batch(issues, difficulty, label): |
| 170 | + """Create a batch of issues""" |
| 171 | + success = 0 |
| 172 | + for title, file, desc in issues: |
| 173 | + body = f"""## Description |
| 174 | +{desc} |
| 175 | +
|
| 176 | +## Difficulty |
| 177 | +{difficulty} |
| 178 | +
|
| 179 | +## File Location |
| 180 | +exercises/1000_programs/{difficulty.lower()}/{file} |
| 181 | +
|
| 182 | +## Requirements |
| 183 | +- [ ] Implement core functionality |
| 184 | +- [ ] Add input validation |
| 185 | +- [ ] Include error handling |
| 186 | +- [ ] Add type hints |
| 187 | +- [ ] Include docstrings |
| 188 | +
|
| 189 | +## Acceptance Criteria |
| 190 | +- [ ] Functionality works correctly |
| 191 | +- [ ] Input validation present |
| 192 | +- [ ] Error handling implemented |
| 193 | +- [ ] Type hints included |
| 194 | +- [ ] Documentation complete |
| 195 | +
|
| 196 | +## Hints |
| 197 | +- Research best practices |
| 198 | +- Test thoroughly |
| 199 | +- Consider edge cases |
| 200 | +
|
| 201 | +## Related Issues |
| 202 | +Part of 250 issues initiative""" |
| 203 | + |
| 204 | + cmd = ["gh", "issue", "create", "--title", f"[{difficulty.upper()}] {title}", "--body", body, "--label", label] |
| 205 | + result = subprocess.run(cmd, capture_output=True, text=True) |
| 206 | + if result.returncode == 0: |
| 207 | + print(f"✓ {title}") |
| 208 | + success += 1 |
| 209 | + else: |
| 210 | + print(f"✗ {title}") |
| 211 | + time.sleep(2) |
| 212 | + return success |
| 213 | + |
| 214 | +print("Creating additional BEGINNER issues...") |
| 215 | +b_success = create_batch(BEGINNER_MORE, "Beginner", "good first issue,beginner,exercise") |
| 216 | + |
| 217 | +print("\nCreating additional INTERMEDIATE issues...") |
| 218 | +i_success = create_batch(INTERMEDIATE_MORE, "Intermediate", "intermediate,exercise") |
| 219 | + |
| 220 | +print("\nCreating additional ADVANCED issues...") |
| 221 | +a_success = create_batch(ADVANCED_MORE, "Advanced", "advanced,exercise") |
| 222 | + |
| 223 | +print(f"\n{'='*50}") |
| 224 | +print(f"Additional: {b_success + i_success + a_success}/150 created") |
| 225 | +print(f"{'='*50}") |
0 commit comments