Skip to content

Fase 2 — Saneamiento del código (APIs obsoletas y ARC) #5

Description

@jnavarroc

Eliminar APIs eliminadas/obsoletas y modernizar la gestión de memoria.

Avance en PR #11 (cambios aplicados sin Mac; pendientes de compilar/probar).

  • Migrar a ARC (quitar retain/release/autorelease/dealloc manuales en DownloadItem.m y CWArrayController.m).
  • Reemplazar NS_DURING/NS_HANDLER/NS_ENDHANDLER por @try/@catch o comprobaciones de error.
  • setKeys:triggerChangeNotificationsForDependentKey:+keyPathsForValuesAffectingFileName/Icon.
  • NSStringPboardTypeNSPasteboardTypeString.
  • NSTask: setLaunchPath:+launchsetExecutableURL:+launchAndReturnError:.
  • NSWorkspace iconForFileType:iconForContentType: (UTType). (requiere framework + target ≥ 11)
  • NSWorkspace openFile:openURL: con fileURLWithPath:.
  • NSAlert alertWithMessageText:... (obsoleto) → NSAlert con addButtonWithTitle:.
  • Corregir format strings: NSLog(var)NSLog(@"%@", var).
  • Revisar el timer en NSEventTrackingRunLoopMode (usar NSRunLoopCommonModes o GCD).

Criterio de salida: compila sin warnings de deprecación y sin fugas (Instruments/ASan).

Ref: ROADMAP.md → Fase 2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P1-altaRiesgo alto: crashes, APIs eliminadas, seguridadmacos-tahoeModernización a macOS Tahoe (macOS 26)

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions