Skip to content

Commit

Permalink
Merge pull request #3 from SeasideSt/master
Browse files Browse the repository at this point in the history
PIck up the latest from the master branch (1 year's worth) ... Squeak3.5 is only travis failure and for this work I will only be monkeying with GemStone code
  • Loading branch information
dalehenrich committed Sep 15, 2020
2 parents 69a0111 + 9b44f60 commit 03333c6
Show file tree
Hide file tree
Showing 705 changed files with 7,178 additions and 1,794 deletions.
1 change: 1 addition & 0 deletions .pharo4.ston
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ SmalltalkCISpec {
#baseline : 'Seaside3',
#directory : 'repository',
#load : [ 'CI' ],
#onConflict : #useLoaded,
#useLatestMetacello : true,
#platforms : [ #pharo ]
}
Expand Down
17 changes: 11 additions & 6 deletions .smalltalk.ston
Original file line number Diff line number Diff line change
@@ -1,33 +1,38 @@
SmalltalkCISpec {
#loading : [
SCIMetacelloLoadSpec {
#useLatestMetacello : true,
#baseline : 'Seaside3',
#directory : 'repository',
#load : [ 'CI' ],
#onConflict : #useLoaded,
#useLatestMetacello : false,
#onWarningLog : true,
#platforms : [ #pharo ]
},
SCIMetacelloLoadSpec {
#useLatestMetacello : true,
#baseline : 'Seaside3',
#directory : 'repository',
#load : [ 'CI' ],
#onConflict : #useLoaded,
#useLatestMetacello : true,
#onWarningLog : true,
#platforms : [ #squeak ]
},
SCIMetacelloLoadSpec {
#baseline : 'Seaside3',
#directory : 'repository',
#onWarningLog : true,
#onConflict : #useLoaded,
#load : [ 'CI' ],
#useLatestMetacello : true,
#platforms : [ #gemstone ]
}
],
#testing : {
#exclude : {
#packages : [ 'Cryptography.*' ]
}
}
}
},
#include : {
#classes : [ #SentButNotImplementedTest , #UndefinedSymbolsTest ]
}
}
}
33 changes: 28 additions & 5 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
language: smalltalk
sudo: false
addons:
chrome: stable

# before_install:
# - "/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac -screen 0 1280x1024x16"

before_script:
- wget http://selenium-release.storage.googleapis.com/3.141/selenium-server-standalone-3.141.59.jar
- wget https://chromedriver.storage.googleapis.com/85.0.4183.87/chromedriver_linux64.zip
- unzip chromedriver_linux64.zip
# - "export DISPLAY=:99.0"
# - "/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac -screen 0 1280x1024x16"
- "java -Dwebdriver.chrome.driver=chromedriver -Dwebdriver.chrome.logfile=\"${TRAVIS_BUILD_DIR}/chromedriver.log\" -Dwebdriver.chrome.args=--verbose -jar ${TRAVIS_BUILD_DIR}/selenium-server-standalone-3.141.59.jar -port 4444 -log ${TRAVIS_BUILD_DIR}/seleniumlog.txt &"
- "sleep 3" #allow for all processes to start before testing

aliases:
- &pharo4-has-latest-metacello
Expand All @@ -9,8 +22,13 @@ matrix:
allow_failures:
- smalltalk: Squeak-trunk
- smalltalk: Squeak-5.1
- smalltalk: Pharo64-9.0

include:
- smalltalk: Pharo64-9.0
env: BUILD_NAME=Pharo64-9.0
- smalltalk: Pharo64-8.0
env: BUILD_NAME=Pharo64-8.0
- smalltalk: Pharo64-7.0
env: BUILD_NAME=Pharo64-7.0
- smalltalk: Pharo-6.1
Expand All @@ -28,13 +46,18 @@ matrix:
- smalltalk: Squeak-5.1
env: BUILD_NAME=Squeak-5.1

- smalltalk: GemStone-3.4.2
env: BUILD_NAME=GemStone-3.4.2
- smalltalk: GemStone-3.5.2
env: BUILD_NAME=GemStone-3.5.2
cache:
directories:
- $SMALLTALK_CI_CACHE
- smalltalk: GemStone-3.4.5
env: BUILD_NAME=GemStone-3.4.5
cache:
directories:
- $SMALLTALK_CI_CACHE
- smalltalk: GemStone-3.3.6
env: BUILD_NAME=GemStone-3.3.6
- smalltalk: GemStone-3.3.9
env: BUILD_NAME=GemStone-3.3.9
cache:
directories:
- $SMALLTALK_CI_CACHE
Expand Down
36 changes: 20 additions & 16 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,30 +1,31 @@
Seaside development on git follows the [Git Flow branching model](http://nvie.com/posts/a-successful-git-branching-model/). In short, we have two main branches:
- [master](https://github.com/SeasideSt/Seaside/tree/master): the stable version of Seaside
- [develop](https://github.com/SeasideSt/Seaside/tree/develop): the trunk version where development on the next version is happening
Seaside development on git follows the [Github Flow branching model](https://guides.github.com/introduction/flow/). We have one main branch: [master](https://github.com/SeasideSt/Seaside/tree/master): the stable version of Seaside for all platforms.

Bugfixes are always done on a separate branch which is merged into both master and develop.
New features are always done on a separate branch which is merged into develop.
When a new release is ready,
In addition to the main branch, there may be several feature branches containing work in progress and a [develop](https://github.com/SeasideSt/Seaside/tree/develop) branch where we work on breaking changes for the next major version.

Bugfixes and non-breaking features are always created on a separate feature branch which is merged into both master and develop.
Breaking changes are always done on a separate feature branch which is merged into develop.

# Code
We recommend contributing to Seaside using [Github pull requests](https://help.github.com/articles/using-pull-requests/): fork the repository and submit a pull request with your changes. Core Seaside developers can create a branch in the main Seaside repository but we prefer a pull request is made for inclusion in the main branch as well.

If you are contributing a bugfix, then please pull against the master branch.
If you are contributing a new feature, then please pull against develop.
If you are contributing a bugfix or a new feature that is not breaking existing uses, then please pull against the master branch.
If you are contributing breaking changes, then please pull against develop.

Dale Henrich's guide to [Getting started with Github](https://github.com/dalehenrich/metacello-work/blob/master/docs/GettingStartedWithGitHub.md) for Smalltalk development is a good read if you are new to using Github for Smalltalk projects. We are also working on some [[Practical Guidelines for Smalltalk development with Git]].
We mostly develop in Pharo and use [Iceberg](https://github.com/pharo-vcs/iceberg) to commit the code to git. Dale Henrich's guide to [Getting started with Github](https://github.com/dalehenrich/metacello-work/blob/master/docs/GettingStartedWithGitHub.md) for Smalltalk development is still a good read if you are new to using Github for Smalltalk projects and especially if you are developing using other Smalltalk platforms.

Please take the time to add comments and tests and provide a description of the change and the reason for the change in each commit message. Once you have submitted your pull request, an existing developer will then review the submission and either provide feedback or integrate the change. Sometimes we decide not to integrate a change. When this happens, there is usually a good reason; please ask if you aren’t clear why your submission was not integrated.
Please take the time to add comments and tests and provide a description of the change and the reason for the change in each commit message. Once you have submitted your pull request, a core developer will review the submission and either provide feedback or integrate the change. Sometimes we decide not to integrate a change. When this happens, there is usually a good reason; please ask if you aren’t clear why your submission was not integrated.

We have fairly detailed [coding conventions](Coding-Conventions) to help maintain portability. Please read through them to make the job of porting Seaside to other Smalltalk dialects not unnecessarily complex and to maintain a consistent coding style.
We have fairly detailed [coding conventions](https://github.com/SeasideSt/Seaside/wiki/Coding-Conventions) to help maintain portability. Please read through them to make the job of porting Seaside to other Smalltalk dialects not unnecessarily complex and to maintain a consistent coding style.

We have set-up automated [Travis-CI tests](https://travis-ci.org/SeasideSt/Seaside), which will be automatically executed when you submit the pull request. You can run them in your own fork before submitting the pull request, and you can even run them locally. See the [Smalltalk-CI](https://github.com/hpi-swa/smalltalkCI) project for all details.

All Seaside code is licensed under the MIT License and, by submitting code to the project, you are agreeing to provide your code under this license. Before submitting, please also ensure that you have the legal rights to license the code you are submitting; in many areas, your employer may own the rights to code you create even in your spare time.

Seaside development discussions take place on the [Developer Mailing list](http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev). Feel free to send us an email there.
Seaside development discussions take place:
- on the [Developer Mailing list](http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev). Feel free to send us an email there.
- on the Seaside channel of the [Pharo discord server](https://pharo.org/community)

Once you have submitted a few patches and are comfortable with our process and coding conventions feel free to ask to be added as a developer on Github SeasideSt team. Just create an account and ask on the [Developer Mailing list](http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev), providing your username.
Once you have submitted a few contributions and are comfortable with our process and coding conventions feel free to ask to be added as a core developer on Github SeasideSt team. Just create an account and ask on the [Developer Mailing list](http://lists.squeakfoundation.org/mailman/listinfo/seaside-dev) or the Discord channel, providing your username.

# Picking something to work on

Expand All @@ -35,10 +36,13 @@ You can see if there are any bugs marked ["BiteSize"](https://github.com/Seaside

# Checkout

The following way to check out the code has been working for me
You can follow the regular code loading descriptions for Pharo if you develop on Pharo: https://github.com/SeasideSt/Seaside#instructions-for-pharo
Mind that you should load the 'CI' group for Seaside, which loads all tests like on the CI server.

Here is an alternative script if you are not using Iceberg and/or other local git checkouts:

1. checkout the Grease dev branch
1. checkout the Seaside develop branch
1. checkout the Grease branch to use
1. checkout the Seaside branch to work on

```st
"load Grease from the checkout"
Expand Down
18 changes: 13 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,8 @@ Metacello new
```

## Community
Check out the Add-on libraries and projects related to Seaside: https://github.com/SeasideSt/Seaside/wiki/Add-On-Libraries

We have a low traffic mailing list for questions ([sign up here](http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside)) and a (Smalltalk dialect independant) channel on the [Pharo](https://pharo.org) Discord ([sign up here](http://discord.gg/Sj2rhxn)).

## Contributing
Expand All @@ -121,18 +123,24 @@ If you would like to contribute, please visit the [Seaside's contributors page](
Please check the [Wiki](https://github.com/SeasideSt/Seaside/wiki) for more information.

## Status of automated builds
See the travis dashboard: https://travis-ci.org/SeasideSt/Seaside/branches

### master
Pharo | Squeak | GemStone/S
------------ | ------------- | ------------
[![Build status: Pharo-7.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Pharo64-7.0&label=7.0)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: Squeak-5.2](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Squeak-5.2&label=5.2)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: GemStone-3.4.2](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=GemStone-3.4.2&label=3.4.2)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-6.1](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Pharo-6.1&label=6.1)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: Squeak-5.1](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Squeak-5.1&label=5.1)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: GemStone-3.3.6](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=GemStone-3.3.6&label=3.3.6)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-8.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Pharo64-8.0&label=8.0)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: Squeak-5.2](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Squeak-5.2&label=5.2)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: GemStone-3.5.2](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=GemStone-3.5.2&label=3.5.2)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-7.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Pharo64-7.0&label=7.0)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: Squeak-5.1](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Squeak-5.1&label=5.1)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: GemStone-3.4.5](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=GemStone-3.4.5&label=3.4.5)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-6.1](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Pharo-6.1&label=6.1)](http://travis-ci.org/SeasideSt/Seaside) | - | [![Build status: GemStone-3.3.9](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=GemStone-3.3.9&label=3.3.9)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-5.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Pharo-5.0&label=5.0)](http://travis-ci.org/SeasideSt/Seaside) | - | [![Build status: GemStone-3.2.17](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=GemStone-3.2.17&label=3.2.17)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-4.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=Pharo-4.0&label=4.0)](http://travis-ci.org/SeasideSt/Seaside) | - | [![Build status: GemStone-3.1.0.6](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=master&env=BUILD_NAME=GemStone-3.1.0.6&label=3.1.0.6)](http://travis-ci.org/SeasideSt/Seaside)


### development
Pharo | Squeak | GemStone/S
------------ | ------------- | ------------
[![Build status: Pharo-7.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Pharo64-7.0&label=7.0)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: Squeak-5.2](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Squeak-5.2&label=5.2)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: GemStone-3.4.2](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=GemStone-3.4.2&label=3.4.2)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-6.1](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Pharo-6.1&label=6.1)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: Squeak-5.1](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Squeak-5.1&label=5.1)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: GemStone-3.3.6](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=GemStone-3.3.6&label=3.3.6)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-8.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Pharo64-8.0&label=8.0)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: Squeak-5.2](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Squeak-5.2&label=5.2)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: GemStone-3.5.2](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=GemStone-3.5.2&label=3.5.2)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-7.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Pharo64-7.0&label=7.0)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: Squeak-5.1](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Squeak-5.1&label=5.1)](http://travis-ci.org/SeasideSt/Seaside) | [![Build status: GemStone-3.4.5](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=GemStone-3.4.5&label=3.4.5)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-6.1](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Pharo-6.1&label=6.1)](http://travis-ci.org/SeasideSt/Seaside) | - | [![Build status: GemStone-3.3.9](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=GemStone-3.3.9&label=3.3.9)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-5.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Pharo-5.0&label=5.0)](http://travis-ci.org/SeasideSt/Seaside) | - | [![Build status: GemStone-3.2.17](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=GemStone-3.2.17&label=3.2.17)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-4.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Pharo-4.0&label=4.0)](http://travis-ci.org/SeasideSt/Seaside) | - | [![Build status: GemStone-3.1.0.6](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=GemStone-3.1.0.6&label=3.1.0.6)](http://travis-ci.org/SeasideSt/Seaside)
[![Build status: Pharo-4.0](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=Pharo-4.0&label=4.0)](http://travis-ci.org/SeasideSt/Seaside) | - | [![Build status: GemStone-3.1.0.6](http://badges.herokuapp.com/travis/SeasideSt/Seaside?branch=develop&env=BUILD_NAME=GemStone-3.1.0.6&label=3.1.0.6)](http://travis-ci.org/SeasideSt/Seaside)

Original file line number Diff line number Diff line change
Expand Up @@ -61,12 +61,12 @@ baselineadaptors: spec
baseline: 'GsApplicationTools'
with: [ spec
loads: 'Core';
repository: 'github://GsDevKit/gsApplicationTools:v1.?/repository' ];
repository: 'github://GsDevKit/gsApplicationTools:master/repository' ];
baseline: 'Zinc Project'
with: [ spec
className: 'BaselineOfZincHTTPComponents';
loads: #('Core');
repository: 'github://GsDevKit/zinc:v2.4.3.?/repository' ].
repository: 'github://GsDevKit/zinc:gs_master/repository' ].
spec
package: 'Seaside-GemStone-GemServer-Core' with: [ spec requires: #('GsApplicationTools' 'Seaside-Core') ];
package: 'Seaside-GemStone-GemServer-Tests' with: [ spec requires: #('Seaside-GemStone-GemServer-Core' 'Seaside-GemStone-Development' 'Seaside-GemStone-Adaptors-Swazoo' 'Seaside-GemStone-Adaptors-Zinc' 'Seaside-Adaptors-FastCGI') ];
Expand All @@ -81,4 +81,4 @@ baselineadaptors: spec
spec
group: 'FastCGI' with: #('Seaside-Adaptors-FastCGI');
group: 'Tests' with: #('Seaside-GemStone-GemServer-Tests');
group: 'Zinc' with: #('Zinc-Seaside') ]
group: 'Zinc' with: #('Zinc-Seaside') ]

0 comments on commit 03333c6

Please sign in to comment.