Visitar URL original
doc: fix broken and stale build instructions in README (#2058) · lift/framework@7ea53e8 · GitHub
Skip to content

Commit 7ea53e8

Browse files
doc: fix broken and stale build instructions in README (#2058)
1 parent 962989b commit 7ea53e8

1 file changed

Lines changed: 34 additions & 17 deletions

File tree

‎README.md‎

Lines changed: 34 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# The Lift Web Framework
22

3-
[![Build Status](https://travis-ci.org/lift/framework.svg?branch=master)](https://travis-ci.org/lift/framework)
3+
[![Build Status](https://github.com/lift/framework/actions/workflows/ci.yaml/badge.svg?branch=main)](https://github.com/lift/framework/actions/workflows/ci.yaml)
44

55
Lift is the most powerful, most secure web framework available today. There are [Seven Things](http://seventhings.liftweb.net/) that distinguish Lift from other web frameworks.
66

@@ -93,7 +93,7 @@ Logback if you don't already have another SLF4J logging library in place. For ex
9393

9494
```scala
9595
libraryDependencies ++= {
96-
val liftVersion = "3.3.0"
96+
val liftVersion = "4.0.0"
9797
Seq(
9898
"net.liftweb" %% "lift-webkit" % liftVersion % "compile",
9999
"ch.qos.logback" % "logback-classic" % "1.2.3"
@@ -115,12 +115,13 @@ Add Lift to your `pom.xml` like so:
115115
<dependency>
116116
<groupId>net.liftweb</groupId>
117117
<artifactId>lift-webkit_${scala.version}</artifactId>
118-
<version>3.3.0</version>
118+
<version>4.0.0</version>
119119
</dependency>
120120

121-
Where `${scala.version}` is `2.13` for the 4.x series. Individual patch releases of the Scala compiler
122-
(e.g. 2.12.2) are binary compatible with everything in their release series, so you only need the
123-
first two version parts.
121+
Where `${scala.version}` is `2.13` or `3` for the 4.x series, which cross-builds against both Scala
122+
2.13 and Scala 3. Individual patch releases of the Scala compiler (e.g. 2.13.18) are binary compatible
123+
with everything in their release series, so you only need the first version part for Scala 3, or the
124+
first two version parts for Scala 2.13.
124125

125126
You can learn more about Maven integration [on the wiki](http://www.assembla.com/wiki/show/liftweb/Using_Maven).
126127

@@ -147,9 +148,9 @@ We will accept issues and pull requests into the Lift codebase if the pull reque
147148
* The request adheres to our [contributing guidelines][contribfile], including having been discussed
148149
on the Mailing List if its from a non-committer.
149150

150-
[supfile]: https://github.com/lift/framework/blob/master/SUPPORT.md
151-
[contribfile]: https://github.com/lift/framework/blob/master/CONTRIBUTING.md
152-
[sigfile]: https://github.com/lift/framework/blob/master/contributors.md
151+
[supfile]: https://github.com/lift/framework/blob/main/SUPPORT.md
152+
[contribfile]: https://github.com/lift/framework/blob/main/CONTRIBUTING.md
153+
[sigfile]: https://github.com/lift/framework/blob/main/contributors.md
153154

154155
## Project Organization
155156

@@ -165,12 +166,12 @@ likely require one or more of Lift's other components.
165166
* **web:** This component includes all of Lift's core HTTP and web handling. Including `lift-webkit`
166167
in your build process should be sufficient for basic applications and will include `lift-core` as a
167168
transitive dependency.
168-
* **persistence:** This component includes Mapper and Record, Lift's two ORMs. While you needn't use
169-
either and can use the ORM of your choice, Mapper and Record integrate nicely with Lift's idioms.
170-
Mapper is an ORM for relational databases, while Record is a broader ORM with support for both SQL
171-
databases and NoSQL datastores.
172169

173-
### Other Repostories
170+
As of Lift 4.0, the persistence components (Mapper and Record) have been removed from this
171+
repository. If your project relies on them, pin to a 3.x release, or use another ORM of your choice
172+
with Lift 4.0+.
173+
174+
### Other Repositories
174175

175176
There are a variety of other repositories available on the Lift GitHub page. While many are concerned with building Lift or are build program archetypes, there are two you will probably encounter fairly frequently as a Lift user:
176177

@@ -190,13 +191,22 @@ The [examples](https://github.com/lift/examples) repository contains the source
190191

191192
If you simply want to use Lift in your project, add Lift as a dependency to your build system or [download the JAR files directly](https://www.liftweb.net/download).
192193

193-
If you wish to build Lift from source, check out this repository and use the included `liftsh` script to build some or all of the components you want.
194+
If you wish to build Lift from source, check out this repository and build it with [sbt](https://www.scala-sbt.org/).
195+
Lift no longer bundles a `liftsh` wrapper script, so you'll need `sbt` installed locally (the
196+
version this repository builds against is pinned in `project/build.properties`).
194197

195198
git clone https://github.com/lift/framework.git
196199
cd framework
197-
./liftsh +update +publish
200+
sbt +test
201+
sbt +publishLocal
198202

199-
There is [additional documentation on the wiki](http://www.assembla.com/spaces/liftweb/wiki/Building_Lift).
203+
The leading `+` runs the command once per entry in `crossScalaVersions`, so `sbt +test` compiles and
204+
runs the test suite for every module against both Scala 2.13 and Scala 3 as configured in `build.sbt`
205+
(a plain `sbt test`, without the `+`, only runs against the default Scala version). Likewise, `sbt
206+
+publishLocal` publishes snapshot artifacts for both Scala versions to your local Ivy repository
207+
(`~/.ivy2`) so other local projects can depend on them. To build or publish a single module, prefix
208+
the command with its project name, e.g. `sbt webkit/publishLocal` or `sbt +webkit/publishLocal` for
209+
both Scala versions.
200210

201211
## Additional Resources
202212

@@ -222,3 +232,10 @@ Lift is open source software released under the **Apache 2.0 license**.
222232

223233
## Continuous Integration
224234

235+
Lift is built and tested on [GitHub Actions](https://github.com/lift/framework/actions/workflows/ci.yaml)
236+
against a matrix of supported Java (11, 17, 21) and Scala (2.13, 3) versions on every pull request and
237+
push to `main` and the active release branches. See [`.github/workflows/ci.yaml`][ciyaml] for the
238+
current configuration.
239+
240+
[ciyaml]: https://github.com/lift/framework/blob/main/.github/workflows/ci.yaml
241+

0 commit comments

Comments
 (0)