HISE Logo Forum
    • Categories
    • Register
    • Login

    Faust 2.58.11 to test

    Scheduled Pinned Locked Moved Faust Development
    17 Posts 4 Posters 1.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      sletz
      last edited by sletz

      I've found the problem: changes in the Faust dsp/dsp_factory API, and since HISE is maintaining it's own version, this make the thing quite fragile.. @Christoph-Hart I'll send you a patch.

      Christoph HartC 1 Reply Last reply Reply Quote 1
      • Christoph HartC
        Christoph Hart @sletz
        last edited by

        @sletz Yes I can confirm that the patch you send me works now (I had to add the darwin flag but apart from that everything loaded fine).

        However now it won't compile against the old Faust (2.50.6 or whatever it was) because the old API doesn't have the getWarningMessage() function. Is there a preprocessor macro in the faust headers that I can query for the version and conditionally include the getWarningMessage() function definition? I would love to not force everybody to update their Faust installation to keep using it.

        1 Reply Last reply Reply Quote 1
        • S
          sletz
          last edited by sletz

          Would FAUSTVERSION work for that?

          See: https://github.com/grame-cncm/faust/blob/master-dev/architecture/faust/export.h#L28

          Function added in 2.54.0, see: https://github.com/grame-cncm/faust/commit/a962231a9ca985cfa2ba513c01028872af62b115

          BTW: now I understand why the latest published 2.54.9 version was also crashing !?

          Christoph HartC 1 Reply Last reply Reply Quote 0
          • Christoph HartC
            Christoph Hart @sletz
            last edited by

            @sletz The problem is that this is a preprocessor string and it's impossible to use it in a conditional expression. I've added a manual projucer flag in the hi_faust_types module that the user has to switch on if he wants to keep using the old faust version (OLD_FAUST_API_SUPPORT), but this is only a very low level solution that only removes the getWarningMessage() function from the Faust wrappers and will probably cause issues again with the next breaking API change.

            If you could add integer versions of the version, this would allow people to check the library version conditionally (and I could remove that flag and let the system figure it out automatically). Usually it's done like this:

            #define FAUSTMAJORVERSION 2
            #define FAUSTMINORVERSION 50
            #define FAUSTPATCHVERSION 6
            

            then I could use

            #if  FAUSTMAJORVERSION <= 2 && FAUSTMINORVERSION <= 54
            #define OLD_FAUST_API_SUPPORT 1
            #else
            #define OLD_FAUST_API_SUPPORT 0
            #endif
            
            1 Reply Last reply Reply Quote 1
            • S
              sletz
              last edited by

              OK, fixed in https://github.com/grame-cncm/faust/commit/fd8b6fa2496f55f3de0c531455f4cf9a8339586a.

              1 Reply Last reply Reply Quote 0
              • S
                sletz
                last edited by

                Add classInit method in dsp_factory class, https://github.com/grame-cncm/faust/commit/90d40d425dac7557667387e3a8a5f4b44ce1ae43.

                Version raised to 2.59.0, possible breaking for HISE integration.

                1 Reply Last reply Reply Quote 0
                • S
                  sletz
                  last edited by

                  Working with 2.59.1 without changes.

                  LindonL 1 Reply Last reply Reply Quote 0
                  • LindonL
                    Lindon @sletz
                    last edited by

                    @sletz said in Faust 2.58.11 to test:

                    Working with 2.59.1 without changes.

                    so are we saying 2.59.1 works with HISE?

                    HISE Development for hire.
                    www.channelrobot.com

                    LindonL 1 Reply Last reply Reply Quote 0
                    • S
                      sletz
                      last edited by

                      Yes indeed.

                      1 Reply Last reply Reply Quote 2
                      • LindonL
                        Lindon @Lindon
                        last edited by

                        @Lindon said in Faust 2.58.11 to test:

                        @sletz said in Faust 2.58.11 to test:

                        Working with 2.59.1 without changes.

                        so are we saying 2.59.1 works with HISE?

                        Could someone please point me at Faust release 2.59.1 - the latest I can find is 2.54.9....

                        HISE Development for hire.
                        www.channelrobot.com

                        LindonL 1 Reply Last reply Reply Quote 0
                        • LindonL
                          Lindon @Lindon
                          last edited by

                          for those looking....

                          https://github.com/DBraun/faust/actions/runs/4788344768

                          down the bottom of the page 2.59.2

                          HISE Development for hire.
                          www.channelrobot.com

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          12

                          Online

                          1.7k

                          Users

                          11.8k

                          Topics

                          102.6k

                          Posts