Skip to content
This repository has been archived by the owner on Apr 8, 2021. It is now read-only.

sbt 1.0 release #134

Closed
pjfanning opened this issue Aug 11, 2017 · 21 comments
Closed

sbt 1.0 release #134

pjfanning opened this issue Aug 11, 2017 · 21 comments

Comments

@pjfanning
Copy link

Is there a plan to release an sbt 1.0 compatible plugin? #132 is related.
I had a quick look regarding the sbt-dependency-graph build and found that sbt-pgp 1.1.0-M1 supports sbt 1.0. I raised sbt/sbt-scalariform#64. There seems to be more required for the sbt scripted-plugin than just uptaking org.scala-sbt#scripted-plugin_2.12;1.0.0.
I've tried the sbt-coursier plugin and it does work but it doesn't have the same features as this plugin.

@jrudolph
Copy link
Member

jrudolph commented Aug 11, 2017 via email

@hseeberger
Copy link
Member

Summer outside? Not in Germany right now ;-)

@jrudolph
Copy link
Member

I had a look at sbt 1.0 support at the weekend. It's far from trivial:

  • sbt-dependency-graph uses data structures from sbt to figure out the dependency graph that probably can be considered internal to sbt and seem to have changed in sbt 1.0. I haven't looked into that in detail so I cannot even estimate what amount of work it would take to update / rewrite the core part of sbt-dependency-graph. In the best case things have just been moved around.
  • sbt-dependency-graph still uses old (non-macro-based) Task definition syntax, this doesn't work any more in sbt 1.0, so the syntax needs to be adapted everywhere (simple to change but annoying)
  • (minor) ascii-graph currently has no 2.12 version. For now, I'd just disable the dependencyGraph task for sbt 1.0, it was only useful for pretty small graphs any way.
  • I need to decide whether to support cross-building for sbt 0.13.x and 1.x from one code-base. It might be a hassle in which case the current working 0.13 version could be maintained in its own branch. On the other hand, it would be definitely less confusing for users if there'd be only a single code base working for 0.13 and 1.0 at least for the time being. It might even be more efficient to make careful changes to still support 0.13 as well.

I'm treating this with some priority but depending on the amount of work it might still take a while. If someone wants to help just taking the existing code and fixing the deprecations against sbt 0.13 would help a lot.

@jrudolph
Copy link
Member

If someone wants to help just taking the existing code and fixing the deprecations against sbt 0.13 would help a lot.

I managed to do these mostly yesterday evening. Someone also pointed to an old branch at https://github.com/jrudolph/sbt-dependency-graph/tree/w/sbt-1.0.0-M4-support I had forgotten about that could help with the first bullet point.

@kamilkloch
Copy link

sbt 1.0.1 is there :)

@jrudolph
Copy link
Member

sbt 1.0.1 is there :)

Unfortunately, it hasn't fixed bugs like sbt/sbt#3299.

Anyway I have published a 0.8.3-SNAPSHOT version to sonatype for the brave ones.

@stephennancekivell
Copy link

Thanks for publishing the snapshot. I've given it a go on a fairly large project (~ 150 deps) without any issue.

@dwijnand
Copy link
Member

dwijnand commented Sep 6, 2017

Is sbt/sbt#3299 a show-stopping bug?

@dwijnand
Copy link
Member

dwijnand commented Sep 6, 2017

With regards to cross-building please note that https://github.com/dwijnand/sbt-compat is available, and I'm happy to accept changes for any shim required by sbt-dependency-graph.

@akauppi
Copy link

akauppi commented Sep 20, 2017

@dwijnand sbt/sbt#3299 was closed 7 days ago.


Oops, it was You who closed it. O:)

@benblack86
Copy link

0.8.3-SNAPSHOT is working well for me

@sarahgerweck
Copy link

Seems like people are having good luck with the snapshot, and the prereq issues are fixed: Is it time to release 0.8.3 (or 0.9)?

@MasseGuillaume
Copy link
Member

MasseGuillaume commented Oct 16, 2017

As part of SCP-013 the Scala Center has the task to help the community migrate their plugins.

Since this plugin is on the top of the sbt 1.0 migration list we are offering our help.

Here is my plan:

@MasseGuillaume
Copy link
Member

Just completed the first phase: #139

@jrudolph
Copy link
Member

@MasseGuillaume sorry for not answering any sooner here. Have you seen #137 and #138? This contains the current state of the migration. I think the simple things have mostly been solved and I published a SNAPSHOT of sbt 1.0 support a while ago from that branch. However, I'd like to be able to keep cross-building to sbt 0.13. So, basically what's missing is taking #137/#138 and make sure that they can be cross-built against 0.13.

@MasseGuillaume
Copy link
Member

Yep I saw both branches. I took a bit of your work in #137 I can add you as an author in the commit message if you want.

@MasseGuillaume
Copy link
Member

@jrudolph

sbt-dependency-graph is now cross compiled between sbt 1.0 and 0.13

You need to merge #139 then #140. Then you can publish with sbt "^ publish". Let me know If I missed anything.

@jrudolph
Copy link
Member

jrudolph commented Oct 17, 2017 via email

@sarahgerweck
Copy link

Is there anything the community can do to help get this released?

@jrudolph
Copy link
Member

I just merged all the pending PRs for the 1.0 upgrade and released 0.9.0 for both sbt 0.13 and 1.0.

Thanks a lot again, @MasseGuillaume and Scala Center for helping out to get this finally resolved.

@slandelle
Copy link

Thanks a bunch!!!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests