Uploaded image for project: 'core.typed'
  1. CTYP-285

Cljc reader conditionals in ns form cause core.typed to skip checking namespace

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Completed
    • Affects versions: 0.3.14
    • Fix versions: 0.3.20
    • Components: Core type system
    • Labels:
      None

      Description

      Problem

      (See the following code repository for a working example: https://github.com/frenchy64/typed-cljc-bug)

      When cljc reader conditionals (#? and #?@) are used in the ns form of a cljc file, check-ns returns :ok, but does not actually check the namespace.

      The following error message is displayed, complaining of a lacking NS form:

      ; => (t/check-ns)
      ;Initializing core.typed ...
      ;Building core.typed base environments ...
      ;Finished building base environments
      ;"Elapsed time: 6214.616942 msecs"
      ;core.typed initialized.
      ;Start collecting cljc-fail.core
      ;WARNING: File for cljc-fail.core not found on classpath: cljc_fail/core.cljc
      ;Finished collecting cljc-fail.core
      ;Collected 1 namespaces in 114.423761 msecs
      ;WARNING: File for cljc-fail.core not found on classpath: cljc_fail/core.cljc
      ;WARNING: File for cljc-fail.core not found on classpath: cljc_fail/core.cljc
      ;Not checking cljc-fail.core (ns form missing)
      ;Checked 1 namespaces  in 120.673717 msecs
      ; :ok
      

      Solution

      Bump tools.namespace to 0.2.11.

      Pull request: 93
      Commit: 9beca4b8
      Version: 0.3.20

        Attachments

          Activity

            People

            • Assignee:
              ambrosebs Ambrose BS
              Reporter:
              alex+import import
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: