Skip to content

Releases: pharo-spec/Chest

v0.5.1: Adding a clipboard chest + doc

21 Apr 07:17
a65b5fd
Compare
Choose a tag to compare

Features:

  • Adding possibility to copy an object to a "Chest clipboard"
  • Adding possibility to paste the last object copied to this clipnoard, into a spec code presenter

Known issues:

  • Keyboard Shortcuts don't work for now and I don't know why yet. It looks like a Spec bug to me

Documentation:

  • doc on how to use the chest clipboard, in the README.
  • documentation can now be viewed directly in the documentation browser of Pharo (in the World context menu: Help > Documentation Browser

v0.5.0: Code injection + doc

28 Mar 14:27
9d42494
Compare
Choose a tag to compare

Feature:

  • Adding possibility to inject code to access an object from a chest, inside a playground or a debugger

Other:

  • updating documentation in the README:
    • updating screenshots to show the UI
    • adding details about weak chests
    • adding details about the new code injection feature

[v0.4.2] Fixing Chest baseline with new group

03 Mar 10:17
b631084
Compare
Choose a tag to compare
Merge pull request #5 from adri09070/fix-baselines-so-that-newtools-l…

[v0.4.1] Moving 'Open Chests' to the debug world menu

10 Feb 08:55
fe5f04e
Compare
Choose a tag to compare
Merge pull request #4 from adri09070/master

Moving Chest to the #Debug World menu

Decoupling UI and logic in store and load commands

30 Jan 13:32
b6b1967
Compare
Choose a tag to compare

Decoupling UI and logic in store and load commands

Refactorings:

  • Making ChestStoreObjectCommand actually store the object into a chest, instead of letting the presenter do it

  • Making ChestLoadObjectCommand actually store the object into a chest, instead of letting the presenter do it

Adding weak chests

30 Jan 13:35
Compare
Choose a tag to compare

Feature:

  • Adding possibility to add weak references to objects in chests. To do that, a weak chest needs to be created, via Chest weak or WeakChest. Then the API is the same as Chest and WeakChest has even its own default instance so WeakChest can be used as a chest itself.

Refactorings: code factorization and separation of preoccupations

30 Jan 13:37
8e41eb2
Compare
Choose a tag to compare

Changes:

  • enabling the deletion of the default Chest when naming a new chest or renaming an existing chest with a name identical to the default chest's name
  • renaming ChestLoadObjectIntoCode into ChestLoadObjectIntoCodeCommand

Fixes:

  • Fixing a bug because of which the load command could be used in code presenters even if its interaction model couldn't add bindings. Now, this is only possible to add bindings in a playground, in the debugger and in the Chest playground.

Implementation Notes:

  • adding helpers in StDebugger to access its code interactionModel and its bindings more easily
  • cleaning unused methods and inst vars
  • factorizing of the handling block from on:do: when another chest has already the name that the user chooses in ChestPresenter>>#presenterToNameNewChest: and ChestPresenter>>#presenterToRenameChest:
  • factorizing code of popovers opening in ChestPresenter>>#requestRenameChest:fromContextMenuItem and requestNameNewChestFromToolbar: and ChestPresenter>>#requestRenameObjectFromChest:fromContextMenu:Item:
  • ChestPresenter>>#warningNamingObjectInChest: now delegates to the method of same name in ChestTableWithContentPresenter
  • factorizing transmitDo: blocks in ChestTableWithContentPresenter so that it can be reused in ChestPresenter when overriding the transmitDo: block
  • refactoring#isVisibleForContext: by adding a #canLoadBindings method in SpCodeInteractionModel + taking this into account in ChestCommandTreeBuilder so that the load command is only visible if the code presenter's interaction model can add bindings.
  • Storing cancel and accept buttons in ChestTableWithContentPresenter instead of assuming that they are the last and first button in the ChestTableWithContentPresenter's toolbar
  • making Variable>>#comesFromChest access the chest tag via an accessor on Chest class so that this tag can be accessed by any class that needs to know it
  • classifying methods + removing unused temps + renaming ChestTests into ChestTest + making ChestTest>>#setUp and ChestTest>>#tearDown call super setUp and `super tearDown, necessary for green CI (~~ 30min)