Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

agnos.is Forums

  1. Home
  2. Programming
  3. Cursed knowledge we have learned as a result of building Immich that we wish we never knew.

Cursed knowledge we have learned as a result of building Immich that we wish we never knew.

Scheduled Pinned Locked Moved Programming
programming
52 Posts 37 Posters 3 Views
  • 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.
  • irelephant@lemmy.dbzer0.comI [email protected]

    The bcrypt implementation only uses the first 72 bytes of a string. Any characters after that are ignored.

    what

    chaos@beehaw.orgC This user is from outside of this forum
    chaos@beehaw.orgC This user is from outside of this forum
    [email protected]
    wrote last edited by [email protected]
    #32

    Older Unix systems used to only do the first 8 bytes for passwords. Sometimes for my own amusement when logging into one of the Sun machines at school, I'd type in enough of my password to count and then just mash the keyboard.

    S 1 Reply Last reply
    7
    • maestro@fedia.ioM [email protected]

      It doesn't matter. That will happen for both the stored hash and the entered password, so it still matches.

      P This user is from outside of this forum
      P This user is from outside of this forum
      [email protected]
      wrote last edited by
      #33

      As long as it runs the same code, yes. But things may change, clients may pre-emptively split the string or stuff like that.

      1 Reply Last reply
      0
      • M [email protected]

        Some phones will silently strip GPS data from images when apps without location permission try to access them.

        This is quite reasonable.

        C This user is from outside of this forum
        C This user is from outside of this forum
        [email protected]
        wrote last edited by
        #34

        It is not. App X creates image A with location data.

        App Y without location permission accesses image A in read mode. Now image A has no location.

        You open image A again from app X and the location is no longer there. It makes no sense. Had app Y written to image A, it makes sense that location data was stripped. But opening a file in read mode should not alter it. Except for metadata of the kind "last opened at ...".

        M 1 Reply Last reply
        9
        • P [email protected]
          This post did not contain any content.
          G This user is from outside of this forum
          G This user is from outside of this forum
          [email protected]
          wrote last edited by
          #35

          Some web features like the clipboard API only work in "secure contexts" (ie. https or localhost)

          I think that's reasonable behavior

          F 1 Reply Last reply
          13
          • C [email protected]

            It is not. App X creates image A with location data.

            App Y without location permission accesses image A in read mode. Now image A has no location.

            You open image A again from app X and the location is no longer there. It makes no sense. Had app Y written to image A, it makes sense that location data was stripped. But opening a file in read mode should not alter it. Except for metadata of the kind "last opened at ...".

            M This user is from outside of this forum
            M This user is from outside of this forum
            [email protected]
            wrote last edited by
            #36

            In modern android you do not open files, you use an OS service to get an image, which may or may not come from a file on the device. If you want to open files you need a different permission.

            You could argue that android should have a permission level for apps that need image geolocation but not GPS.

            S 1 Reply Last reply
            2
            • M [email protected]

              In modern android you do not open files, you use an OS service to get an image, which may or may not come from a file on the device. If you want to open files you need a different permission.

              You could argue that android should have a permission level for apps that need image geolocation but not GPS.

              S This user is from outside of this forum
              S This user is from outside of this forum
              [email protected]
              wrote last edited by
              #37

              One could argue they a reading service should not alter the thing that's read. Android is not a quantum state!

              1 Reply Last reply
              8
              • J [email protected]

                I ... this seems like a std library made to troll you. Is there a (good) reason it is like that?

                C This user is from outside of this forum
                C This user is from outside of this forum
                [email protected]
                wrote last edited by
                #38

                Backward compatibility and not seeing the future. Some decisions are taken at one point in time, then a new use case show up, then a new paradigm evolve, then… etc etc.

                It's really the same thing that holds back a lot of languages and libraries. And even when replacement shows up, old habits from devs and old projects maintenance keep all these things well alive too.

                1 Reply Last reply
                4
                • M [email protected]

                  I learned that not too long ago, too.

                  I mean it surprised me, but there are many ways around that. May be less efficient, but you can always use string-to-array, or json, or copy more for CTE then work with inputs as a table.

                  R This user is from outside of this forum
                  R This user is from outside of this forum
                  [email protected]
                  wrote last edited by
                  #39

                  Create a user defined table type and use that as a parameter. I'm not sure what the postgres name of that is.

                  M 1 Reply Last reply
                  1
                  • P [email protected]
                    This post did not contain any content.
                    P This user is from outside of this forum
                    P This user is from outside of this forum
                    [email protected]
                    wrote last edited by
                    #40

                    YAML whitespace is cursed

                    YAML is cursed and shouldn't exist. I will die on that hill, with either 4 whitespaces or a tab to back me up.

                    S 1 Reply Last reply
                    15
                    • chaos@beehaw.orgC [email protected]

                      Older Unix systems used to only do the first 8 bytes for passwords. Sometimes for my own amusement when logging into one of the Sun machines at school, I'd type in enough of my password to count and then just mash the keyboard.

                      S This user is from outside of this forum
                      S This user is from outside of this forum
                      [email protected]
                      wrote last edited by
                      #41

                      for a long time, hotmail (and i think windows live mail) only checked the first 16 characters.

                      S 1 Reply Last reply
                      1
                      • G [email protected]

                        Some web features like the clipboard API only work in "secure contexts" (ie. https or localhost)

                        I think that's reasonable behavior

                        F This user is from outside of this forum
                        F This user is from outside of this forum
                        [email protected]
                        wrote last edited by
                        #42

                        I don't. You can't even copy to the clipboard in an insecure context.

                        Except... You can! You just have to use the old deprecated and ridiculously awkward execCommand method.

                        If that's so insecure why do all browser's still support it?

                        1 Reply Last reply
                        5
                        • S [email protected]

                          Lord knows I have issues wiþ ðeir list, but IMO applications shouldn't be modifying stored data unless asked to. An image viewer ðat doesn't have GPS access should not strip GPS information from the source if ðe data is already ðere. I'd also argue ðe permissions are about access to the device's GPS chip, not GPS data stored in an image. Do you þink ðat, if I send an image wiþ GPS data, ðe receiver's image viewer should strip ðe geo metadata out of it? Why?

                          S This user is from outside of this forum
                          S This user is from outside of this forum
                          [email protected]
                          wrote last edited by
                          #43

                          GPS information from the source

                          Here, I think you're being downvoted because you missed one of ð in the

                          S 1 Reply Last reply
                          3
                          • S [email protected]

                            for a long time, hotmail (and i think windows live mail) only checked the first 16 characters.

                            S This user is from outside of this forum
                            S This user is from outside of this forum
                            [email protected]
                            wrote last edited by
                            #44

                            That's almost as good as the ones that limit password on the sign-in UI, but not on the sign-up

                            F 1 Reply Last reply
                            0
                            • R [email protected]

                              Create a user defined table type and use that as a parameter. I'm not sure what the postgres name of that is.

                              M This user is from outside of this forum
                              M This user is from outside of this forum
                              [email protected]
                              wrote last edited by
                              #45

                              And how do you put data into the table?

                              R 1 Reply Last reply
                              0
                              • S [email protected]

                                Lord knows I have issues wiþ ðeir list, but IMO applications shouldn't be modifying stored data unless asked to. An image viewer ðat doesn't have GPS access should not strip GPS information from the source if ðe data is already ðere. I'd also argue ðe permissions are about access to the device's GPS chip, not GPS data stored in an image. Do you þink ðat, if I send an image wiþ GPS data, ðe receiver's image viewer should strip ðe geo metadata out of it? Why?

                                J This user is from outside of this forum
                                J This user is from outside of this forum
                                [email protected]
                                wrote last edited by
                                #46

                                This makes so much sense, english is like my fifth language and having a way to differentiate between the "th" in "with" and the "th" in "the" would've been so useful

                                S 1 Reply Last reply
                                2
                                • M [email protected]

                                  And how do you put data into the table?

                                  R This user is from outside of this forum
                                  R This user is from outside of this forum
                                  [email protected]
                                  wrote last edited by
                                  #47

                                  Based on old memories since I've been working in mongo lately, after making the UDT on the db side, you make a data table that has the same name, namespace (ie dbo/public), and the same schema as the UDT (better if that could be generated) and populate it in code. Then you execute the db query with the UDT type as a parameter.

                                  This is better for a few reasons, including not building up a string, but also having the same text means that each query didn't need to be re-parsed and can reuse execution plans. If the query text isn't an exact match, it gets that whole pipeline each time.

                                  1 Reply Last reply
                                  0
                                  • J [email protected]

                                    This makes so much sense, english is like my fifth language and having a way to differentiate between the "th" in "with" and the "th" in "the" would've been so useful

                                    S This user is from outside of this forum
                                    S This user is from outside of this forum
                                    [email protected]
                                    wrote last edited by
                                    #48

                                    I didn't save ðe article, but I came across one recently ðat explains a lot of ðe oddness in English comes from when ðe aristocracy was French and ðey were trying to make everyone use French spelling. Ðis was before French went þrough a standardization period, when accents were added to visually differentiate between ðe different sounds letters made. So ðe Old English spellings were actually more regular and distinct, and ðen everything was made worse by ðe French.

                                    1 Reply Last reply
                                    0
                                    • S [email protected]

                                      GPS information from the source

                                      Here, I think you're being downvoted because you missed one of ð in the

                                      S This user is from outside of this forum
                                      S This user is from outside of this forum
                                      [email protected]
                                      wrote last edited by
                                      #49

                                      Yes. I, too, make mistakes. I know, I know... it's hard to believe, but it's true.

                                      1 Reply Last reply
                                      0
                                      • P [email protected]

                                        YAML whitespace is cursed

                                        YAML is cursed and shouldn't exist. I will die on that hill, with either 4 whitespaces or a tab to back me up.

                                        S This user is from outside of this forum
                                        S This user is from outside of this forum
                                        [email protected]
                                        wrote last edited by
                                        #50

                                        I'm with you on the white space thing. Spaces, especially multiples of spaces, should not have a programming function.

                                        1 Reply Last reply
                                        0
                                        • M [email protected]

                                          Some phones will silently strip GPS data from images when apps without location permission try to access them.

                                          This is quite reasonable.

                                          P This user is from outside of this forum
                                          P This user is from outside of this forum
                                          [email protected]
                                          wrote last edited by
                                          #51

                                          Wtf?

                                          Opening a file with a program that doesn't support part of the file will delete that part

                                          There is nothing even remotely reasonable with that.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups