adamdruppe / arsd

This is a collection of modules that I've released over the years. Most of them stand alone, or have just one or two dependencies in here, so you don't have to download this whole repo.
http://arsd-official.dpldocs.info/arsd.html
531 stars 125 forks source link

arsd #377

Open John-Colvin opened 1 year ago

John-Colvin commented 1 year ago
~/.dub/packages/arsd-official-10.9.8/arsd-official/simpledisplay.d(7222,3): Error: undefined identifier `future`

Do you have a mechanism to prevent breaking releases like this? Maybe some script that checks everything builds and then creates the tag?

John-Colvin commented 1 year ago

it's also broken in 10.9.7 as well. 10.9.6 is ok.

adamdruppe commented 1 year ago

I actually did comment that out since it failed my test but apparently the tag was made before that....

Just always use master, it is the version I actually support.

adamdruppe commented 1 year ago

From master:

    /*@future*/ allowResizingMaintainingAspectRatio, // gdc 9 doesn't allow the @future thing here but that's still the intention

What compiler version you on anyway?

John-Colvin commented 1 year ago

In order to say you support dub, I think you need to make at least the latest tag work ok. Depending on ~master means the dependency changes unpredictably, depending on a specific git commit in dub does work, but it's not how people use it. They use the versions. dub add arsd uses the versions. And so on.

John-Colvin commented 1 year ago

dmd-2.102.0

adamdruppe commented 1 year ago

I don't say I support dub.

John-Colvin commented 1 year ago

you publish a dub package called arsd-official...

adamdruppe commented 1 year ago

In fact, I specifically say I don't support dub. It is a gigantic pain in my ass that I'd like to see permanently deleted from all systems and all time.

It is published with the hopes that it might be useful, but with

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

adamdruppe commented 1 year ago

try 10.9.9 now it might work

John-Colvin commented 1 year ago

I understand of course, no guarantees, known by the state of cancer to cause california and so on.

I'm just wondering how to make the user experience go smoother given how they do behave.

John-Colvin commented 1 year ago

try 10.9.9 now it might work

yeah that works, thanks :)

adamdruppe commented 1 year ago

Actually looks like the thing might be called __future in the mainline compiler too.

adamdruppe commented 1 year ago

And right now master is completely broken cuz i committed before changing branches in the middle of something lol

but at least master will get a fix p soon whereas tags sit there

John-Colvin commented 1 year ago

It seems that really the answer to what to use is "some commits on master, user can work out which ones".

adamdruppe commented 1 year ago

Always use the latest. If it is broken, the latest actually gets fixed in a little while.

The tags are just arbitrary points where some dub user hassled me and I appeased them.

John-Colvin commented 1 year ago

This isn't ideal as a user, because if I need it to work now, am I supposed to just walk back commits until I find a good one?

adamdruppe commented 1 year ago

If master is broken, wait 20 minutes and it is fixed.

Hell, even if dub tags are broken, ping me and I can usually cherry pick a fix there in 15-20 mins too.

adamdruppe commented 1 year ago

so i have a makefile that runs the local tests. it takes like a minute which is brutally slow but it tests compile across 3 compiler versions times 4 platforms (i might add a 5th soon too, i might do bsd).

mebbe a git pre-commit hook could run through all that

just sometimes i commit just to change branches lol

adamdruppe commented 1 year ago

git config --global --add tag.sort -version:refname

that's a neat trick

adamdruppe commented 1 year ago

I updated my old makefile to be on a pre commit hook at least that should keep things building before i push it lol