Skip to content

Commit 2a95725

Browse files
authored
Simplified Install (#171)
* Removed hatch support * Updated macOS SWI discovery * Updated paths for test fixtures in tests * Updated INSTALL.md * Updated change log
1 parent d399f0d commit 2a95725

File tree

13 files changed

+253
-297
lines changed

13 files changed

+253
-297
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@ pyswip.egg-info/
99
build/
1010
/.idea/
1111
/.mypy_cache/
12+
.venv

CHANGELOG.md

Lines changed: 75 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1,113 +1,119 @@
11
# CHANGELOG
22

3-
### 0.2.11 (Not Released)
4-
5-
* Improve list representations, unicode support and multiple threading usage, see: [97](https://github.com/yuce/pyswip/pull/97). Contributed by Guglielmo Gemignani.
6-
* Added PL_STRINGS_MARK to getAtomChars, fixes [102](https://github.com/yuce/pyswip/issues/102). Contributed by Vince Jankovics.
7-
* Backwards compatibility for Python 2 64bit, see: [104](https://github.com/yuce/pyswip/pull/104). Contributed by Tobias Grubenmann.
8-
* Improved handling of lists, nested lists, strings, and atoms. see: [112](https://github.com/yuce/pyswip/pull/112). Contributed by Tobias Grubenmann.
9-
* Fixes for changed constants, see: [125](https://github.com/yuce/pyswip/pull/125). Contributed by Arvid Norlander.
3+
### 0.3.0 (Not Released)
4+
5+
* Improve list representations, unicode support and multiple threading usage, see: [97](https://github.com/yuce/pyswip/pull/97). Contributed by Guglielmo Gemignani.
6+
* Added PL_STRINGS_MARK to getAtomChars, fixes [102](https://github.com/yuce/pyswip/issues/102). Contributed by Vince Jankovics.
7+
* Backwards compatibility for Python 2 64bit, see: [104](https://github.com/yuce/pyswip/pull/104). Contributed by Tobias Grubenmann.
8+
* Improved handling of lists, nested lists, strings, and atoms. see: [112](https://github.com/yuce/pyswip/pull/112). Contributed by Tobias Grubenmann.
9+
* Fixes for changed constants, see: [125](https://github.com/yuce/pyswip/pull/125). Contributed by Arvid Norlander.
10+
* Refactored SWI-Prolog discovery [commit](https://github.com/yuce/pyswip/commit/d399f0d049ff17200b1b7e1cd878faf3e48502dc)
11+
* Dictionary support, see: [commit](https://github.com/yuce/pyswip/commit/59016e0841f56177d1b18ec08fd9b67792bd0a97). Contributed by Max Peltzer.
12+
* Check `PILLIBSWIPL` environment variable for the `libswipl` library path [145](https://github.com/yuce/pyswip/pull/145). Contributed by Jan Wielemaker.
13+
* Avoid AttributeError with PL_version_info in swipl <= 8.4.2 [154](https://github.com/yuce/pyswip/pull/154). Contributed by Jan DestyNova.
14+
* Added hardcoded path for `libswipl.so` [43](https://github.com/yuce/pyswip/pull/43). Contributed by Kumar Abhinav.
15+
* Fixed not finding swipl lib file when there are multiple options [153](https://github.com/yuce/pyswip/pull/153). Contributed by AdiHarif.
1016

1117
### 0.2.10
1218

13-
* Synchronized type constants with SWI-Prolog.h
14-
update for broken compatibility changes in SWI-Prolog.h up to 0.8.3.
15-
* Fix incorrect REP_* constants.
16-
* Fixed issue [#92](https://github.com/yuce/pyswip/issues/92) (C assert)
17-
* Fixed issue [#90](https://github.com/yuce/pyswip/issues/90) (quoted string)
18-
* Fixed Variables in foreign functions not unifiable. Contributed by Michael Kasch.
19-
* Added support multibyte strings and atoms. Contributed by Nikolai Merinov.
20-
* Updated core.py and easy.py for unifying strings properly. Contributed by rohanshekhar.
21-
* Fixed issue [#71](https://github.com/yuce/pyswip/issues/71). Contributed by prologrules.
22-
* Fixed compatibility with SWI-Prolog 8.2.0. Contributed by Stuart Reynolds.
23-
* Fixed compatibility with MacOS. Contributed by prologrules and Dylan Lukes.
19+
* Synchronized type constants with SWI-Prolog.h
20+
update for broken compatibility changes in SWI-Prolog.h up to 0.8.3.
21+
* Fix incorrect REP_* constants.
22+
* Fixed issue [#92](https://github.com/yuce/pyswip/issues/92) (C assert)
23+
* Fixed issue [#90](https://github.com/yuce/pyswip/issues/90) (quoted string)
24+
* Fixed Variables in foreign functions not unifiable. Contributed by Michael Kasch.
25+
* Added support multibyte strings and atoms. Contributed by Nikolai Merinov.
26+
* Updated core.py and easy.py for unifying strings properly. Contributed by rohanshekhar.
27+
* Fixed issue [#71](https://github.com/yuce/pyswip/issues/71). Contributed by prologrules.
28+
* Fixed compatibility with SWI-Prolog 8.2.0. Contributed by Stuart Reynolds.
29+
* Fixed compatibility with MacOS. Contributed by prologrules and Dylan Lukes.
2430

2531
### 0.2.9
2632

27-
* Added non deterministic foreign function support. Contributed by rmanhaeve.
28-
* Fixed issue [#67](https://github.com/yuce/pyswip/pull/67). Contributed by Galileo Sartor.
33+
* Added non deterministic foreign function support. Contributed by rmanhaeve.
34+
* Fixed issue [#67](https://github.com/yuce/pyswip/pull/67). Contributed by Galileo Sartor.
2935

3036
### 0.2.8
3137

32-
* Fixed issue [#35](https://github.com/yuce/pyswip/issues/35). Contributed by Robert Simione.
38+
* Fixed issue [#35](https://github.com/yuce/pyswip/issues/35). Contributed by Robert Simione.
3339

3440
### 0.2.7
3541

36-
* Works on FreeBSD.
42+
* Works on FreeBSD.
3743

3844
### 0.2.6
3945

40-
* Fixed issue [#9](https://github.com/yuce/pyswip/issues/9).
41-
* Fixed issue [#10](https://github.com/yuce/pyswip/issues/10).
46+
* Fixed issue [#9](https://github.com/yuce/pyswip/issues/9).
47+
* Fixed issue [#10](https://github.com/yuce/pyswip/issues/10).
4248

4349
### 0.2.5
4450

45-
* Project cleanup
46-
* Updated the examples for Python 3.
51+
* Project cleanup
52+
* Updated the examples for Python 3.
4753

4854
### 0.2.4
4955

50-
* Maintenance release of PySwip
51-
* Added an error to avoid opening nested queries using PySwip (SWI-Prolog does
52-
not allow that). The error is NestedQueryError.
53-
* Added Tomasz Gryszkiewicz's patch for better finding the SWI-Prolog lib in
54-
Darwin
55-
* Solved issue 4 "Patch for a dynamic method"
56-
* Solved issue 5 "Patch: hash and eq methods for Atom class"
57-
* Solved issue 3: "Problem with variables in lists"
58-
* Solved issue 17: "Can't find SWI-Prolog library in Homebrew's /usr/local"
56+
* Maintenance release of PySwip
57+
* Added an error to avoid opening nested queries using PySwip (SWI-Prolog does
58+
not allow that). The error is NestedQueryError.
59+
* Added Tomasz Gryszkiewicz's patch for better finding the SWI-Prolog lib in
60+
Darwin
61+
* Solved issue 4 "Patch for a dynamic method"
62+
* Solved issue 5 "Patch: hash and eq methods for Atom class"
63+
* Solved issue 3: "Problem with variables in lists"
64+
* Solved issue 17: "Can't find SWI-Prolog library in Homebrew's /usr/local"
5965

6066
### 0.2.3
6167

62-
* Maintenance release of PySwip
63-
* Solved issue "Segmentation fault when assertz-ing" (thanks to jpthompson23)
64-
* Solved issue "pyswip doesn't work on cygwin"
65-
* Solved issue "Callbacks can cause segv's" (thanks to jpthompson23)
66-
* Solved issue "Improve library loading"
67-
* Solved issue "sys.exit does not work when importing pyswip"
68+
* Maintenance release of PySwip
69+
* Solved issue "Segmentation fault when assertz-ing" (thanks to jpthompson23)
70+
* Solved issue "pyswip doesn't work on cygwin"
71+
* Solved issue "Callbacks can cause segv's" (thanks to jpthompson23)
72+
* Solved issue "Improve library loading"
73+
* Solved issue "sys.exit does not work when importing pyswip"
6874

6975
### 0.2.2
7076

71-
* PySwip won't rely on the (id of the) functor handle of `=/2`.
72-
* Sebastian Höhn's patch to enable PySwip to work on MAC OS-X is incorporated.
77+
* PySwip won't rely on the (id of the) functor handle of `=/2`.
78+
* Sebastian Höhn's patch to enable PySwip to work on MAC OS-X is incorporated.
7379

7480
### 0.2.1
7581

76-
* Importing `pyswip` automatically initializes SWI-Prolog.
77-
* Fixed a bug with querying lists with the new interface.
82+
* Importing `pyswip` automatically initializes SWI-Prolog.
83+
* Fixed a bug with querying lists with the new interface.
7884

7985
### 0.2.0
8086

81-
* All names are included with `from pyswip import ...`
82-
* New *Pythonic* interface
83-
* Prolog.query returns real Python datatypes
84-
* Markus Triska's Sudoku Solver
85-
* Prolog module support
86-
* Foreign functions retrieve Python datatypes.
87+
* All names are included with `from pyswip import ...`
88+
* New *Pythonic* interface
89+
* Prolog.query returns real Python datatypes
90+
* Markus Triska's Sudoku Solver
91+
* Prolog module support
92+
* Foreign functions retrieve Python datatypes.
8793

8894
### 0.1.3
8995

90-
* Renamed `pyswip/util.py` to `pyswip/prolog.py`.
91-
* New module `pyswip.easy`.
92-
* Now it is possible to register a Python function as a Prolog predicate
93-
through SWI-Prolog's Foreign Function Interface.
94-
* Additions to the core library.
95-
* Added example, *register foreign* which shows how to register a Python
96-
function as an SWI-Prolog predicate.
97-
* Added example, *Towers of Hanoi*
96+
* Renamed `pyswip/util.py` to `pyswip/prolog.py`.
97+
* New module `pyswip.easy`.
98+
* Now it is possible to register a Python function as a Prolog predicate
99+
through SWI-Prolog's Foreign Function Interface.
100+
* Additions to the core library.
101+
* Added example, *register foreign* which shows how to register a Python
102+
function as an SWI-Prolog predicate.
103+
* Added example, *Towers of Hanoi*
98104

99105
### 0.1.2
100106

101-
* Renamed `PrologRunner` to `Prolog`.
102-
* Removed `query` method of `Prolog`, `queryGenerator` is renamed as `query`.
103-
* Added `asserta`, `assertz` and `consult` methods to `Prolog`.
104-
* The necessary cleanup is done even if the `query` generator doesn't run to the end.
105-
* Errors during the execution of `query` is caught and `PrologError` is raised.
106-
* Many new additions to the core library.
107-
* Added `examples` directory.
108-
* Added examples, *coins* and *draughts*.
107+
* Renamed `PrologRunner` to `Prolog`.
108+
* Removed `query` method of `Prolog`, `queryGenerator` is renamed as `query`.
109+
* Added `asserta`, `assertz` and `consult` methods to `Prolog`.
110+
* The necessary cleanup is done even if the `query` generator doesn't run to the end.
111+
* Errors during the execution of `query` is caught and `PrologError` is raised.
112+
* Many new additions to the core library.
113+
* Added `examples` directory.
114+
* Added examples, *coins* and *draughts*.
109115

110116
### 0.1.1
111117

112-
* Added `queryGenerator` to PrologRunner, `query` calls `queryGenerator`.
113-
* Added example `send more money`.
118+
* Added `queryGenerator` to PrologRunner, `query` calls `queryGenerator`.
119+
* Added example `send more money`.

0 commit comments

Comments
 (0)